Bonsoir à tous,
Je suis débutant en VBA, mais j'utilise régulièrement d'autres languages de programmation.
Je rencontre un souci avec le code suivant :
Pour expliquer le but de la sous-routine en synthèse : vérifier dans la sélection que je fais à la souris avant de lancer la macro si les champs sont vides; lorsqu'elle tombe sur un champ non vide, je veux qu'elle vérifie dans un autre onglet si elle trouve la valeur de la case non vide dans la première colonne. Si elle la trouve, je veux qu'elle copie la valeur de la cellule située deux colonnes avant la cellule non-vide, dans la seconde colonne de l'autre onglet. J'espère que c'est clair.
Quand je la lance, je sélectionne la colonne dans laquelle je veux qu ecette recherche s'effectue et je lance la macro : j'ai une fenêtre avec une crois blanche sur un fond rouge avec marqué à côté : 400...
Juste après cette erreur, je constate que la cellule active est dans la deuxième colonne de l'autre onglet, donc l'opération s'est bien déroulée une fois, mais la cellule est vide, donc j'en déduis qu'il y a un souci avec le copier-coller
Merci pour votre aide si vous avez des idées...
Bonne soirée
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 Option Explicit Sub Regrouper() Dim cellule As Range Dim j As Integer For Each cellule In Selection If Not IsEmpty(cellule) Then ActiveCell.Offset(0, -2).Select Selection.Copy Sheets("Groupe").Activate For j = 1 To 789 If cellule.Value = Cells(j, 1) Then Cells(j, 2).Select ActiveSheet.Paste End If Next j End If Next cellule End Sub
Partager