Je souhaite créer si possible une commande (macro, etc) qui pourai affecté à une colonne une frappe automatique dans la cellule de la colonne précédente Exemple: je tape le chiffre 34 dans la colonne C ligne 10 (ou n'inporte qu'elle autre ligne) et apparait le texte " Clés de la cuisine" dans la colonne B ligne 10. j'ai beau chercher je trouve pas, il faut dire que je suis novice en excel et que je mis perd dans l'aide de VBA. Ceci pour créer chaques jours une liste de clés en entrant que son n° dans la colonne choisis.
Merci à ceux ou celles qui auront la solutions.
Non Guillou, Cela ne proviens pas de cette macro ce qui est enregistré reste tel-quel je pense à autre chose Ouvre ton fichier, en VBA va en menu Affichage et Fenêtre Excécution copie la ligne ci-dessous, et positionne le curseur en bout de ligne et presse sur la touche Entrer et enregistre.
Application.EnableEvents = True
ceci à pour but de remettre les événements actifs s'il y a eu un plantage en étant à....... úlse Youky
"guillou" a écrit dans le message de news:
Youky a écrit le 16/11/2008 à 16h26 :
Au cas d'effacement de plusieurs cellules j'ai rajouté une ligne pour éviter le bug. Youky
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Target.Column <> 3 Or Target = "" Then Exit Sub 'que si col C For k = 1 To Feuil2.[A65000].End(3).Row If Target.Value = Feuil2.Cells(k, 1) Then Feuil2.Cells(k, 2).Copy Cells(Target.Row, 2) Exit For End If Next End Sub
Merci youky, effectivement cela fonctionne bien maintenant sauf que cela fonctionne que pendant le temps de l'ouverture du fichier, une fois enregistré et fermer, a la prochaine ouverture du fichier plus rien ne fonctionne ! nouveau bug? je suis obligé de créer un nouveau fichier et de recommencer! bizarre! Cdt. Gilles
Non Guillou,
Cela ne proviens pas de cette macro ce qui est enregistré reste tel-quel je
pense à autre chose
Ouvre ton fichier, en VBA va en menu Affichage et Fenêtre Excécution copie
la ligne ci-dessous,
et positionne le curseur en bout de ligne et presse sur la touche Entrer et
enregistre.
Application.EnableEvents = True
ceci à pour but de remettre les événements actifs s'il y a eu un plantage en
étant à....... úlse
Youky
"guillou" <guillou@domain-xyz.in> a écrit dans le message de news:
AomdnTpSx-lTE7zU4p2dnAA@giganews.com...
Youky a écrit le 16/11/2008 à 16h26 :
Au cas d'effacement de plusieurs cellules j'ai rajouté une ligne pour
éviter
le bug.
Youky
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Column <> 3 Or Target = "" Then Exit Sub 'que si col
C
For k = 1 To Feuil2.[A65000].End(3).Row
If Target.Value = Feuil2.Cells(k, 1) Then
Feuil2.Cells(k, 2).Copy Cells(Target.Row, 2)
Exit For
End If
Next
End Sub
Merci youky, effectivement cela fonctionne bien maintenant sauf que cela
fonctionne que pendant le temps de l'ouverture du fichier, une fois
enregistré
et fermer, a la prochaine ouverture du fichier plus rien ne fonctionne !
nouveau
bug? je suis obligé de créer un nouveau fichier et de recommencer!
bizarre! Cdt.
Gilles
Non Guillou, Cela ne proviens pas de cette macro ce qui est enregistré reste tel-quel je pense à autre chose Ouvre ton fichier, en VBA va en menu Affichage et Fenêtre Excécution copie la ligne ci-dessous, et positionne le curseur en bout de ligne et presse sur la touche Entrer et enregistre.
Application.EnableEvents = True
ceci à pour but de remettre les événements actifs s'il y a eu un plantage en étant à....... úlse Youky
"guillou" a écrit dans le message de news:
Youky a écrit le 16/11/2008 à 16h26 :
Au cas d'effacement de plusieurs cellules j'ai rajouté une ligne pour éviter le bug. Youky
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Target.Column <> 3 Or Target = "" Then Exit Sub 'que si col C For k = 1 To Feuil2.[A65000].End(3).Row If Target.Value = Feuil2.Cells(k, 1) Then Feuil2.Cells(k, 2).Copy Cells(Target.Row, 2) Exit For End If Next End Sub
Merci youky, effectivement cela fonctionne bien maintenant sauf que cela fonctionne que pendant le temps de l'ouverture du fichier, une fois enregistré et fermer, a la prochaine ouverture du fichier plus rien ne fonctionne ! nouveau bug? je suis obligé de créer un nouveau fichier et de recommencer! bizarre! Cdt. Gilles
guillou
Youky a écrit le 17/11/2008 à 17h18 :
Non Guillou, Cela ne proviens pas de cette macro ce qui est enregistré reste tel-quel je pense à autre chose Ouvre ton fichier, en VBA va en menu Affichage et Fenêtre Excécution copie la ligne ci-dessous, et positionne le curseur en bout de ligne et presse sur la touche Entrer et enregistre.
Application.EnableEvents = True
ceci à pour but de remettre les événements actifs s'il y a eu un plantage en étant à....... úlse Youky
"guillou" a écrit dans le message de news:
Youky a écrit le 16/11/2008 à 16h26 :
Au cas d'effacement de plusieurs cellules j'ai rajouté une ligne pour éviter le bug. Youky
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Target.Column <> 3 Or Target = "" Then Exit Sub 'que si col C For k = 1 To Feuil2.[A65000].End(3).Row If Target.Value = Feuil2.Cells(k, 1) Then Feuil2.Cells(k, 2).Copy Cells(Target.Row, 2) Exit For End If Next End Sub
Merci youky, effectivement cela fonctionne bien maintenant sauf que cela fonctionne que pendant le temps de l'ouverture du fichier, une fois enregistré et fermer, a la prochaine ouverture du fichier plus rien ne fonctionne ! nouveau bug? je suis obligé de créer un nouveau fichier et de recommencer! bizarre! Cdt. Gilles
Ok ça marche, Excel m'informe que les macros sont désactivées et après avoir changer le niveau de sécurité c'est bon! Merci Youky. j'ai tenté de mettre le macro en double pour utilisé une seconde liste de données en feuille 3 sur le même principe en choisissant d'autres colonne pour la feuille 3, mais ça fonctionne pas. ont peu pas fait ca? Colonne F envoie donnée de la base feuille2 sur colonne E et colonne C envoie donnée de la base feuille3 à la colonne B, par exemple! Cdt. Gilles
Youky a écrit le 17/11/2008 à 17h18 :
Non Guillou,
Cela ne proviens pas de cette macro ce qui est enregistré reste tel-quel
je
pense à autre chose
Ouvre ton fichier, en VBA va en menu Affichage et Fenêtre
Excécution copie
la ligne ci-dessous,
et positionne le curseur en bout de ligne et presse sur la touche Entrer et
enregistre.
Application.EnableEvents = True
ceci à pour but de remettre les événements actifs s'il y a
eu un plantage en
étant à....... úlse
Youky
"guillou" a écrit dans le
message de news:
Youky a écrit le 16/11/2008 à 16h26 :
Au cas d'effacement de plusieurs cellules j'ai rajouté une ligne pour
éviter
le bug.
Youky
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Column <> 3 Or Target = "" Then Exit Sub 'que si
col
C
For k = 1 To Feuil2.[A65000].End(3).Row
If Target.Value = Feuil2.Cells(k, 1) Then
Feuil2.Cells(k, 2).Copy Cells(Target.Row, 2)
Exit For
End If
Next
End Sub
Merci youky, effectivement cela fonctionne bien maintenant sauf que cela
fonctionne que pendant le temps de l'ouverture du fichier, une fois
enregistré
et fermer, a la prochaine ouverture du fichier plus rien ne fonctionne !
nouveau
bug? je suis obligé de créer un nouveau fichier et de
recommencer!
bizarre! Cdt.
Gilles
Ok ça marche, Excel m'informe que les macros sont désactivées et après avoir changer le niveau de sécurité c'est bon! Merci Youky. j'ai tenté de mettre le macro en double pour utilisé une seconde liste de données en feuille 3 sur le même principe en choisissant d'autres colonne pour la feuille 3, mais ça fonctionne pas. ont peu pas fait ca? Colonne F envoie donnée de la base feuille2 sur colonne E et colonne C envoie donnée de la base feuille3 à la colonne B, par exemple! Cdt. Gilles
Non Guillou, Cela ne proviens pas de cette macro ce qui est enregistré reste tel-quel je pense à autre chose Ouvre ton fichier, en VBA va en menu Affichage et Fenêtre Excécution copie la ligne ci-dessous, et positionne le curseur en bout de ligne et presse sur la touche Entrer et enregistre.
Application.EnableEvents = True
ceci à pour but de remettre les événements actifs s'il y a eu un plantage en étant à....... úlse Youky
"guillou" a écrit dans le message de news:
Youky a écrit le 16/11/2008 à 16h26 :
Au cas d'effacement de plusieurs cellules j'ai rajouté une ligne pour éviter le bug. Youky
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count > 1 Then Exit Sub If Target.Column <> 3 Or Target = "" Then Exit Sub 'que si col C For k = 1 To Feuil2.[A65000].End(3).Row If Target.Value = Feuil2.Cells(k, 1) Then Feuil2.Cells(k, 2).Copy Cells(Target.Row, 2) Exit For End If Next End Sub
Merci youky, effectivement cela fonctionne bien maintenant sauf que cela fonctionne que pendant le temps de l'ouverture du fichier, une fois enregistré et fermer, a la prochaine ouverture du fichier plus rien ne fonctionne ! nouveau bug? je suis obligé de créer un nouveau fichier et de recommencer! bizarre! Cdt. Gilles
Ok ça marche, Excel m'informe que les macros sont désactivées et après avoir changer le niveau de sécurité c'est bon! Merci Youky. j'ai tenté de mettre le macro en double pour utilisé une seconde liste de données en feuille 3 sur le même principe en choisissant d'autres colonne pour la feuille 3, mais ça fonctionne pas. ont peu pas fait ca? Colonne F envoie donnée de la base feuille2 sur colonne E et colonne C envoie donnée de la base feuille3 à la colonne B, par exemple! Cdt. Gilles
Youky
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count > 1 Or Target = "" Then Exit Sub
If Target.Column = 6 Then ' que col F For k = 1 To Feuil2.[A65000].End(3).Row If Target.Value = Feuil2.Cells(k, 1) Then Feuil2.Cells(k, 2).Copy Cells(Target.Row, 5) '5 est col E Exit For End If Next End If
If Target.Column = 3 Then ' que col C For k = 1 To Feuil3.[A65000].End(3).Row If Target.Value = Feuil3.Cells(k, 1) Then Feuil3.Cells(k, 2).Copy Cells(Target.Row, 2) '2 est col B Exit For End If Next End If
End Sub
Youky
Ok ça marche, Excel m'informe que les macros sont désactivées et après avoir changer le niveau de sécurité c'est bon! Merci Youky. j'ai tenté de mettre le macro en double pour utilisé une seconde liste de données en feuille 3 sur le même principe en choisissant d'autres colonne pour la feuille 3, mais ça fonctionne pas. ont peu pas fait ca? Colonne F envoie donnée de la base feuille2 sur colonne E et colonne C envoie donnée de la base feuille3 à la colonne B, par exemple! Cdt. Gilles
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Or Target = "" Then Exit Sub
If Target.Column = 6 Then ' que col F
For k = 1 To Feuil2.[A65000].End(3).Row
If Target.Value = Feuil2.Cells(k, 1) Then
Feuil2.Cells(k, 2).Copy Cells(Target.Row, 5) '5 est col E
Exit For
End If
Next
End If
If Target.Column = 3 Then ' que col C
For k = 1 To Feuil3.[A65000].End(3).Row
If Target.Value = Feuil3.Cells(k, 1) Then
Feuil3.Cells(k, 2).Copy Cells(Target.Row, 2) '2 est col B
Exit For
End If
Next
End If
End Sub
Youky
Ok ça marche, Excel m'informe que les macros sont désactivées et après
avoir
changer le niveau de sécurité c'est bon! Merci Youky. j'ai tenté de mettre
le
macro en double pour utilisé une seconde liste de données en feuille 3 sur
le
même principe en choisissant d'autres colonne pour la feuille 3, mais ça
fonctionne pas. ont peu pas fait ca? Colonne F envoie donnée de la base
feuille2
sur colonne E et colonne C envoie donnée de la base feuille3 à la colonne
B, par
exemple! Cdt. Gilles
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Count > 1 Or Target = "" Then Exit Sub
If Target.Column = 6 Then ' que col F For k = 1 To Feuil2.[A65000].End(3).Row If Target.Value = Feuil2.Cells(k, 1) Then Feuil2.Cells(k, 2).Copy Cells(Target.Row, 5) '5 est col E Exit For End If Next End If
If Target.Column = 3 Then ' que col C For k = 1 To Feuil3.[A65000].End(3).Row If Target.Value = Feuil3.Cells(k, 1) Then Feuil3.Cells(k, 2).Copy Cells(Target.Row, 2) '2 est col B Exit For End If Next End If
End Sub
Youky
Ok ça marche, Excel m'informe que les macros sont désactivées et après avoir changer le niveau de sécurité c'est bon! Merci Youky. j'ai tenté de mettre le macro en double pour utilisé une seconde liste de données en feuille 3 sur le même principe en choisissant d'autres colonne pour la feuille 3, mais ça fonctionne pas. ont peu pas fait ca? Colonne F envoie donnée de la base feuille2 sur colonne E et colonne C envoie donnée de la base feuille3 à la colonne B, par exemple! Cdt. Gilles