Copier une ligne et incrémentation partielle
Résolu
alexluthor
-
alexluthor -
alexluthor -
Bonjour,
je me trouve devant un problème peut être simple pour vous (j'espère).
Voilà j'essaye de copier une ligne sur simple clic d'un bouton :
Cette ligne possède une fonction sur une certaine colonne qui s'incrémente automatiquement et mon souhait serait de l'incrémenter qu'une partie de la fonction qui affiche la "valeur" affichée devant le N° souhaité d'une liste (via données validation liste etc...)
peut etre plus clair :j'ai une ligne ou on a un choix :
exemple N° de machine.
dans un tableau il y a sur 2 colonnes : N° machine et N° de série de la machine
Et sur cette fameuse ligne je choisis le N° machine et j'obtiens directement le bon N° de série.
Le problème est j'arrive a dupliquer cette ligne mais les valeurs des fonctions d'affichage changent aussi (+1 a chaque valeur)
soit : =RECHERCHEV(B1;A28:B59;2) devient : =RECHERCHEV(B2;A29:B60;2) le B2 est correct mais les valeurs de la table en référence changent un conseil ??????
MERCI d'avance !
Alex
je me trouve devant un problème peut être simple pour vous (j'espère).
Voilà j'essaye de copier une ligne sur simple clic d'un bouton :
Cette ligne possède une fonction sur une certaine colonne qui s'incrémente automatiquement et mon souhait serait de l'incrémenter qu'une partie de la fonction qui affiche la "valeur" affichée devant le N° souhaité d'une liste (via données validation liste etc...)
peut etre plus clair :j'ai une ligne ou on a un choix :
exemple N° de machine.
dans un tableau il y a sur 2 colonnes : N° machine et N° de série de la machine
Et sur cette fameuse ligne je choisis le N° machine et j'obtiens directement le bon N° de série.
Le problème est j'arrive a dupliquer cette ligne mais les valeurs des fonctions d'affichage changent aussi (+1 a chaque valeur)
soit : =RECHERCHEV(B1;A28:B59;2) devient : =RECHERCHEV(B2;A29:B60;2) le B2 est correct mais les valeurs de la table en référence changent un conseil ??????
MERCI d'avance !
Alex
A voir également:
- Excel copier formule avec incrémentation
- Formule si et excel - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Formule somme excel colonne - Guide
- Excel mise en forme conditionnelle formule - Guide
- Liste déroulante excel - Guide
3 réponses
Bonsoir,
A28:B59 est une référence relative, elle s'incrémente sur la ligne suivante.
Il faut que tu la rendes absolue (fixe) pour les colonnes et les lignes avec des $ devant.
=RECHERCHEV(B1;$A$28:$B$59;2)
eric
A28:B59 est une référence relative, elle s'incrémente sur la ligne suivante.
Il faut que tu la rendes absolue (fixe) pour les colonnes et les lignes avec des $ devant.
=RECHERCHEV(B1;$A$28:$B$59;2)
eric
Sinon autre petit problème qui survient :
quand la ligne est copiée elle est identique a celle sélectionnée comment pourrait-on remettre a zéro les différentes listes de choix automatiquement a chaque nouvelle ligne ??
Merci d'avance encore une fois (j'espère)
Alex
quand la ligne est copiée elle est identique a celle sélectionnée comment pourrait-on remettre a zéro les différentes listes de choix automatiquement a chaque nouvelle ligne ??
Merci d'avance encore une fois (j'espère)
Alex
je suis désolé mais je n'y arrive pas trop je crois que cela provient de ma façon d'incrementer que j'avais repris d'un forum d'ici.
Code:
Private Sub CommandButton1_Click()
'Aller en A1
Range("A1").Select
'Tester si la cellule de dessous est vide, si non descendre d'une ligne
While ActiveCell.Offset(1, 0).Value <> ""
ActiveCell.Offset(1, 0).Select
Wend
'Quand la dernière valeur du tableau est trouvée, sélectionner le nombre de colonnes concernées
ActiveCell.Range("A1:J1").Select
'Recopier le contenu sur une ligne vers le bas
Selection.AutoFill Destination:=ActiveCell.Range("A1:J2"), Type:=xlFillCopy
End Sub
dois-je prendre une autre direction pour ce copier collé ?
Alex.
Code:
Private Sub CommandButton1_Click()
'Aller en A1
Range("A1").Select
'Tester si la cellule de dessous est vide, si non descendre d'une ligne
While ActiveCell.Offset(1, 0).Value <> ""
ActiveCell.Offset(1, 0).Select
Wend
'Quand la dernière valeur du tableau est trouvée, sélectionner le nombre de colonnes concernées
ActiveCell.Range("A1:J1").Select
'Recopier le contenu sur une ligne vers le bas
Selection.AutoFill Destination:=ActiveCell.Range("A1:J2"), Type:=xlFillCopy
End Sub
dois-je prendre une autre direction pour ce copier collé ?
Alex.
Merci encore