Mise à jour de valeur avec un tableau
Résolu/Fermé
Mistral_13200
Messages postés
634
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
21 mars 2024
-
12 nov. 2011 à 12:56
Mistral_13200 Messages postés 634 Date d'inscription mardi 5 août 2008 Statut Membre Dernière intervention 21 mars 2024 - 13 nov. 2011 à 10:03
Mistral_13200 Messages postés 634 Date d'inscription mardi 5 août 2008 Statut Membre Dernière intervention 21 mars 2024 - 13 nov. 2011 à 10:03
A voir également:
- Mise à jour de valeur avec un tableau
- Tableau croisé dynamique - Guide
- Mise à jour pilote - Guide
- Mise a jour windows 10 - Guide
- Mise a jour airpods - Guide
- Mise a jour chrome - Guide
10 réponses
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 216
Modifié par eriiic le 12/11/2011 à 13:21
Modifié par eriiic le 12/11/2011 à 13:21
Bonjour,
Et pourquoi pas tout simplement dans tes feuilles mettre :
='ta feuille de parametres'!B1
='ta feuille de parametres'!C1
...
et ce pour les 4 cellules.
Tu peux aussi nommer toutes ces cellules de paramètre en bloc avec 'créer nom', pour peu qu'il y ait des titres de colonne et de ligne, et :
=nomLigne nomColonne
te ramène le paramètre à l'intersection.
eric
Et pourquoi pas tout simplement dans tes feuilles mettre :
='ta feuille de parametres'!B1
='ta feuille de parametres'!C1
...
et ce pour les 4 cellules.
Tu peux aussi nommer toutes ces cellules de paramètre en bloc avec 'créer nom', pour peu qu'il y ait des titres de colonne et de ligne, et :
=nomLigne nomColonne
te ramène le paramètre à l'intersection.
eric
Mistral_13200
Messages postés
634
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
21 mars 2024
4
12 nov. 2011 à 14:09
12 nov. 2011 à 14:09
Bonjour Eric,
Pourquoi pas effectivement ...
Mais il me faut le faire pour les 40 feuilles alors que se serait beaucoup plus rpaide et plus sûr avec un tableau et des boucles imbriquées.
Je vais attendre pour voir s'il y a d'autres solutions.
En tout cas merci pour ta réponse.
Cordialement
Mistral
Pourquoi pas effectivement ...
Mais il me faut le faire pour les 40 feuilles alors que se serait beaucoup plus rpaide et plus sûr avec un tableau et des boucles imbriquées.
Je vais attendre pour voir s'il y a d'autres solutions.
En tout cas merci pour ta réponse.
Cordialement
Mistral
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 216
12 nov. 2011 à 14:52
12 nov. 2011 à 14:52
Re,
à mettre dans la feuille des paramètres :
Mettre le nom de feuille sur toutes les lignes, ex :
eric
à mettre dans la feuille des paramètres :
Sub maj() Dim lig As Long For lig = 2 To [A65536].End(xlUp).Row Worksheets(Cells(lig, 1).Value).Range(Cells(lig, 2).Value) = Cells(lig, 3).Value Next lig End Sub
Mettre le nom de feuille sur toutes les lignes, ex :
Feuille Cellule Valeur Feuil2 A1 1 Feuil2 A2 2 Feuil2 A3 3 Feuil3 E7 4 Feuil3 E8 5 Feuil3 E9 6
eric
Mistral_13200
Messages postés
634
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
21 mars 2024
4
12 nov. 2011 à 15:18
12 nov. 2011 à 15:18
Je viens de faire un rapide essais et celà semble fonctionner. J'ai créé un tableau selon ton modèle et lancé la macro depuis cette feuille et ça fonctionne, mais est-il possible de nommer ce tableau pour lancer la MAJ depuis n'importe quelle feuille du classeur.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Mistral_13200
Messages postés
634
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
21 mars 2024
4
12 nov. 2011 à 15:27
12 nov. 2011 à 15:27
et comment faire si les feuilles sont nommées?
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 216
12 nov. 2011 à 15:47
12 nov. 2011 à 15:47
Dans un module :
et comment faire si les feuilles sont nommées?
Ben tu mets son nom en colonne A, j'ai mis Feuil2 mais ça peut être toto428
eric
Sub maj() Dim lig As Long, sh As Worksheet Set sh = Worksheets("Param") For lig = 2 To sh.[A65536].End(xlUp).Row Worksheets(sh.Cells(lig, 1).Value).Range(sh.Cells(lig, 2).Value) = sh.Cells(lig, 3).Value Next lig End Sub
et comment faire si les feuilles sont nommées?
Ben tu mets son nom en colonne A, j'ai mis Feuil2 mais ça peut être toto428
eric
Mistral_13200
Messages postés
634
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
21 mars 2024
4
12 nov. 2011 à 16:00
12 nov. 2011 à 16:00
Ok j'ai bien nommé une feuille "param" et la macro fonctionne depuis n'importe quelle feuille.
J'ai déjà une feuille "param" dans laquelle j'ai tout un tas de données organisées pour la plus part en ensemble de cellules que j'ai baptisée d'un nom et je voudrais qu'il en soit de même pour mon tableau de MAJ que je pourrais appeller Tab_MAJ par exemple.
J'ai déjà une feuille "param" dans laquelle j'ai tout un tas de données organisées pour la plus part en ensemble de cellules que j'ai baptisée d'un nom et je voudrais qu'il en soit de même pour mon tableau de MAJ que je pourrais appeller Tab_MAJ par exemple.
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 216
12 nov. 2011 à 16:19
12 nov. 2011 à 16:19
Tu peux l'appeler comme tu veux du moment que tu mets le bon nom dans la macro.
eric
eric
Mistral_13200
Messages postés
634
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
21 mars 2024
4
12 nov. 2011 à 16:58
12 nov. 2011 à 16:58
Je crois que je suis en train de me noyer ...
Si sur la feuille "Param" je crée mon tableau de mise à jour, qu'il comporte 10 lignes et 3 colonnes et que j'appelle ce tableau Tab_MAJ. Comment je fais pour aller chercher le nom de la première feuille qui se trouve en haut à gauche de la zone appelée Tab_MAJ?
Désolé si je te paraît lourdeau.
PS /
Ce tableau ne sera pas à partir de A1 car j'ai déjà d'autre élément que je ne peux déplacer.
Set sh = Worksheets("Param"),c'est bien pour aller chercher les valeurs dans la feuille "Param".
For lig = 1 To sh.[A65536].End(xlUp).Rowc'est bien pour commancer la lecture à la cellule A1.
Worksheets(sh.Cells(lig, 1).Value).Range(sh.Cells(lig, 2).Value) = sh.Cells(lig, 3).Valuec'est bien là qu'on sélectionne la feuille (lig,1) qu'on sélectionne la cellule (Lig,2) pour y mettre la valeur (Lig,3).
Si sur la feuille "Param" je crée mon tableau de mise à jour, qu'il comporte 10 lignes et 3 colonnes et que j'appelle ce tableau Tab_MAJ. Comment je fais pour aller chercher le nom de la première feuille qui se trouve en haut à gauche de la zone appelée Tab_MAJ?
Désolé si je te paraît lourdeau.
PS /
Ce tableau ne sera pas à partir de A1 car j'ai déjà d'autre élément que je ne peux déplacer.
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 216
12 nov. 2011 à 17:11
12 nov. 2011 à 17:11
Bon on va faire autrement alors...
Nomme la plage des noms des feuilles (1 colonne, sans le titre) 'ListeFeuilles' par exemple et :
eric
Nomme la plage des noms des feuilles (1 colonne, sans le titre) 'ListeFeuilles' par exemple et :
Sub maj() Dim c As Range For Each c In [ListeFeuilles] Worksheets(c.Value).Range(c.Offset(0, 1).Value) = c.Offset(0, 2).Value Next c End Sub
eric
Mistral_13200
Messages postés
634
Date d'inscription
mardi 5 août 2008
Statut
Membre
Dernière intervention
21 mars 2024
4
13 nov. 2011 à 10:03
13 nov. 2011 à 10:03
Bonjour Eriiic,
PARFAIT !!!
Cela me convient et fonctionne parfaitement.
Ca me permet de pouvoir mettre ma table de données à modifier là ou je veux sans avoir à tout décaler.
Mille merci à toi
Bon dimanche
Cordialement
Mistral
PARFAIT !!!
Cela me convient et fonctionne parfaitement.
Ca me permet de pouvoir mettre ma table de données à modifier là ou je veux sans avoir à tout décaler.
Mille merci à toi
Bon dimanche
Cordialement
Mistral