Pb Commandbutton

P

PF

Guest
Bonjour à tous.
Voici mon problème.
J'ai cree un code qui fonctionne très bien lorsque je lui associe un bouton (barre formulaire) mais qui ne fonctionne plus du tout lorsque je lui associe un commandbutton (barre boite à outils controle).

Qui pourrait m'éclairer.
merci d'avance.
Vous trouverez le code ci dessous.
Patrick



Private Sub okfeuil3_Click()
Application.ScreenUpdating = False

Dim counter As Long
Dim compteur As Long
Dim count As Long
Dim countb As Long

counter = 6
Worksheets(3).Activate
Cells(counter, 1).Activate
'Feuille3, cellule repéré par le counter'
'et la colonne 1, sont active'
Do Until Cells(counter, 1) = ""
counter = counter + 1
'effectuer la boucle suivante :'
'tant que la cellule repéré par le counter'
'et la colonne n'est pas vide, rajouté 1 au'
'counter'
Loop
compteur = 0
For X = 6 To counter
If Cells(X, 1).Text = "Recu Bank" Then
' Si Text est égal à "Recu Bank"
compteur = compteur + 1
If compteur = 3 Then
Y = X
For w = 6 To Y
Worksheets(3).Rows(w).Cut
ActiveSheet.Paste Destination:=Worksheets(4).Rows(w)
Next w
For w = 6 To Y
Worksheets(3).Rows(6).Delete Shift:=xlUp
Next w
Else
End If
End If
Next X

count = 1
Worksheets(5).Activate
Cells(count, 1).Activate
'Feuille5, cellule repéré par le counter'
'et la colonne 1, sont active'
Do Until Cells(count, 1) = ""
count = count + 1
'effectuer la boucle suivante :'
'tant que la cellule repéré par le counter'
'et la colonne n'est pas vide, rajouté 1 au'
'counter'
Loop

For w = 6 To Y
Worksheets(4).Rows(w).Cut
ActiveSheet.Paste Destination:=Worksheets(5).Rows(count)
count = count + 1
Next w
For w = 6 To Y
Worksheets(4).Rows(6).Delete Shift:=xlUp
Next w

Worksheets(3).Activate


Application.ScreenUpdating = True
End Sub
 
J

jacquesderyes

Guest
Bonsoir PF et les amis du forum

Je pense que ton pb provient du contrôle

Dans la barre d'outils"contrôles" actives le mode création
places un nouveau bouton sur tafeuille
Toujours en mode création sélectionnes le nouveau bouton avec le clic droit de la souris et selectionnes"Visualiser le code"
Tu vas te retrouver dans VBE et dans la nouvelle macro affichée tu colles ton code sans la mention Private Sub okfeuil3_Click()

Private Sub CommandButton1_Click()

Ici ton code

End sub
Tu désactives le mode création et là ta macro devrait fonctionner!
Si elle ne fontionne toujours pas alors je ne vois pas le pb.

Bien amicalement
jacques de ryes
 
P

PF

Guest
Bonjour Jacques.
J'ai effectué la démarche que tu m'as propsé mais cela ne fonctionne toujours pas !

As tu regardé mon code ?
Et y as tu décellé une ou des erreurs.
je suppose qu'il est un peu lourd, mais je l'allegerai après, une fois que ce problème sera résolu.

Mais dis moi, comment cela se fait il que l'on ai quelques fois des problèmes lors de la création des boutons ?

Bonne soirée, merci encore de ton aide.
Patrick
 
P

PF

Guest
Bonjour Jacques.
J'ai effectué la démarche que tu m'as propsé mais cela ne fonctionne toujours pas !

As tu regardé mon code ?
Et y as tu décellé une ou des erreurs.
je suppose qu'il est un peu lourd, mais je l'allegerai après, une fois que ce problème sera résolu.

Mais dis moi, comment cela se fait il que l'on ai quelques fois des problèmes lors de la création des boutons ?

Bonne soirée, merci encore de ton aide.
Patrick
 
M

michel

Guest
bonsoir Jacques , Bonsoir Patrick

patrick tu peux tester la macro modifiée

Application.ScreenUpdating = False

Dim counter As Long
Dim compteur As Long
Dim count As Long
Dim countb As Long

counter = 6
Worksheets(3).Activate
Worksheets(3).Cells(counter, 1).Select
'Feuille3, cellule repéré par le counter'
'et la colonne 1, sont active'
Do Until Cells(counter, 1) = ""
counter = counter + 1
'effectuer la boucle suivante :'
'tant que la cellule repéré par le counter'
'et la colonne n'est pas vide, rajouté 1 au'
'counter'
Dim x
Dim y
Dim w
Loop
compteur = 0
For x = 6 To counter
If Cells(x, 1).Text = "Recu Bank" Then
' Si Text est égal à "Recu Bank"
compteur = compteur + 1
If compteur = 3 Then
y = x
For w = 6 To y
Worksheets(3).Rows(w).Cut
ActiveSheet.Paste Destination:=Worksheets(4).Rows(w)
Next w
For w = 6 To y
Worksheets(3).Rows(6).Delete Shift:=xlUp
Next w
Else
End If
End If
Next x

count = 1
Worksheets(5).Activate
Worksheets(5).Cells(count, 1).Activate
'Feuille5, cellule repéré par le counter'
'et la colonne 1, sont active'
Do Until Cells(count, 1) = ""
count = count + 1
'effectuer la boucle suivante :'
'tant que la cellule repéré par le counter'
'et la colonne n'est pas vide, rajouté 1 au'
'counter'
Loop

For w = 6 To y
Worksheets(4).Rows(w).Cut
ActiveSheet.Paste Destination:=Worksheets(5).Rows(count)
count = count + 1
Next w
For w = 6 To y
Worksheets(4).Rows(6).Delete Shift:=xlUp
Next w

Worksheets(3).Activate

Application.ScreenUpdating = True


bonne soirée et bon début de week end
michel
lapin4.gif
 
P

PF

Guest
Bonjour Michel.

En fait, je pense que l'on n'a pas besoin de définir de variables pour a, b et c.
Puisque on dit que se sont de entiers.

Bon week end.

Si malgrè tout il faut les définir peux tu m'envoyer un mel en me donnant le nom des variables.
Merci
PF
 

Discussions similaires

Réponses
0
Affichages
288

Statistiques des forums

Discussions
312 859
Messages
2 092 891
Membres
105 552
dernier inscrit
youcef.aksoum