j'ai passé tout mon dimanche à comprendre pourquoi ma macro fonctionne parfaitement en pas à pas avec F8 et en mode normal ca merdouille
je vous mets le fichier pour voir par vous meme
merci de votre aide
http://cjoint.com/?kbvfoh312C
MichDenis
Essaie ceci :
'---------------------------- Sub feu() Dim Ctrl As Control
Application.ScreenUpdating = True For Each Ctrl In UsfOpeFix.Controls If TypeName(Ctrl) = "CheckBox" Then If Ctrl.Value = True Then With ThisWorkbook With .Sheets(Ctrl.ControlTipText) .Range("B65536").End(xlUp).Offset(1, 0).Value = UsfOpeFix.Tdate.Value .Range("B65536").End(xlUp).Offset(0, 1).Value = UsfOpeFix.Ttype.Value .Range("B65536").End(xlUp).Offset(0, 2).Value = UsfOpeFix.Tops.Value .Range("B65536").End(xlUp).Offset(0, 3).Value = UsfOpeFix.Tdeb.Value .Range("B65536").End(xlUp).Offset(0, 4).Value = UsfOpeFix.Tcred.Value fin = Application.CountA(Range("g:g")) + 1 .Range("G" & fin).Formula = "=$G$2-SUM(E$2:E" & fin & ")+SUM(F$2:F" & fin & ")" End With End With Ctrl.Value = False 'On efface la sélection End If End If Next Ctrl End Sub '----------------------------
"magic-dd" a écrit dans le message de news:
salut les as
j'ai passé tout mon dimanche à comprendre pourquoi ma macro fonctionne parfaitement en pas à pas avec F8 et en mode normal ca merdouille
je vous mets le fichier pour voir par vous meme
merci de votre aide
http://cjoint.com/?kbvfoh312C
Essaie ceci :
'----------------------------
Sub feu()
Dim Ctrl As Control
Application.ScreenUpdating = True
For Each Ctrl In UsfOpeFix.Controls
If TypeName(Ctrl) = "CheckBox" Then
If Ctrl.Value = True Then
With ThisWorkbook
With .Sheets(Ctrl.ControlTipText)
.Range("B65536").End(xlUp).Offset(1, 0).Value = UsfOpeFix.Tdate.Value
.Range("B65536").End(xlUp).Offset(0, 1).Value = UsfOpeFix.Ttype.Value
.Range("B65536").End(xlUp).Offset(0, 2).Value = UsfOpeFix.Tops.Value
.Range("B65536").End(xlUp).Offset(0, 3).Value = UsfOpeFix.Tdeb.Value
.Range("B65536").End(xlUp).Offset(0, 4).Value = UsfOpeFix.Tcred.Value
fin = Application.CountA(Range("g:g")) + 1
.Range("G" & fin).Formula = "=$G$2-SUM(E$2:E" & fin & ")+SUM(F$2:F" & fin & ")"
End With
End With
Ctrl.Value = False 'On efface la sélection
End If
End If
Next Ctrl
End Sub
'----------------------------
"magic-dd" <magicconcours@gmail.com> a écrit dans le message de news:
1159729685.493858.297270@k70g2000cwa.googlegroups.com...
salut les as
j'ai passé tout mon dimanche à comprendre pourquoi ma macro
fonctionne parfaitement en pas à pas avec F8 et en mode normal ca
merdouille
'---------------------------- Sub feu() Dim Ctrl As Control
Application.ScreenUpdating = True For Each Ctrl In UsfOpeFix.Controls If TypeName(Ctrl) = "CheckBox" Then If Ctrl.Value = True Then With ThisWorkbook With .Sheets(Ctrl.ControlTipText) .Range("B65536").End(xlUp).Offset(1, 0).Value = UsfOpeFix.Tdate.Value .Range("B65536").End(xlUp).Offset(0, 1).Value = UsfOpeFix.Ttype.Value .Range("B65536").End(xlUp).Offset(0, 2).Value = UsfOpeFix.Tops.Value .Range("B65536").End(xlUp).Offset(0, 3).Value = UsfOpeFix.Tdeb.Value .Range("B65536").End(xlUp).Offset(0, 4).Value = UsfOpeFix.Tcred.Value fin = Application.CountA(Range("g:g")) + 1 .Range("G" & fin).Formula = "=$G$2-SUM(E$2:E" & fin & ")+SUM(F$2:F" & fin & ")" End With End With Ctrl.Value = False 'On efface la sélection End If End If Next Ctrl End Sub '----------------------------
"magic-dd" a écrit dans le message de news:
salut les as
j'ai passé tout mon dimanche à comprendre pourquoi ma macro fonctionne parfaitement en pas à pas avec F8 et en mode normal ca merdouille
je vous mets le fichier pour voir par vous meme
merci de votre aide
http://cjoint.com/?kbvfoh312C
magic-dd
Merci michel mais cela ne foncionne que si on se place sur la 1ere feuille
essaye de te mettre sur celle de septembre et ensuite de lancer l'ouverture du userform
rempli tout
toutes les cases cochees et envoi la macro
tu verras que sur les pages de octobre à decembre le calcul est decale
chose qu'en pas à pas n'arrive pas
voici le classeur
www.magic-dd.info/Classeur2.xls
merci
Merci michel mais cela ne foncionne que si on se place sur la 1ere
feuille
essaye de te mettre sur celle de septembre et ensuite de lancer
l'ouverture du userform
rempli tout
toutes les cases cochees
et envoi la macro
tu verras que sur les pages de octobre à decembre le calcul est decale
Merci michel mais cela ne foncionne que si on se place sur la 1ere feuille
essaye de te mettre sur celle de septembre et ensuite de lancer l'ouverture du userform
rempli tout
toutes les cases cochees et envoi la macro
tu verras que sur les pages de octobre à decembre le calcul est decale
chose qu'en pas à pas n'arrive pas
voici le classeur
www.magic-dd.info/Classeur2.xls
merci
MichDenis
Voir dans ta bal.
"magic-dd" a écrit dans le message de news:
Merci michel mais cela ne foncionne que si on se place sur la 1ere feuille
essaye de te mettre sur celle de septembre et ensuite de lancer l'ouverture du userform
rempli tout
toutes les cases cochees et envoi la macro
tu verras que sur les pages de octobre à decembre le calcul est decale
chose qu'en pas à pas n'arrive pas
voici le classeur
www.magic-dd.info/Classeur2.xls
merci
Voir dans ta bal.
"magic-dd" <magicconcours@gmail.com> a écrit dans le message de news:
1159733885.276572.4780@k70g2000cwa.googlegroups.com...
Merci michel mais cela ne foncionne que si on se place sur la 1ere
feuille
essaye de te mettre sur celle de septembre et ensuite de lancer
l'ouverture du userform
rempli tout
toutes les cases cochees
et envoi la macro
tu verras que sur les pages de octobre à decembre le calcul est decale
Tu as dans ta colonne G, un résidu de quelque chose dans une des cellules, ta formule fin = Application.CountA(Range("g:g")) + 1 comptabilise une entrée de trop.
Assure-toi de sélectionner la totalité de la colonne G pour les mois problèmes, et appuies sur Del , cela va régler ton problème !
Tu pourrais aussi utiliser la formule suivante : Fin = .Range("G65536").End(xlUp)(2).Row
"magic-dd" a écrit dans le message de news:
merci michel
cela ne marche tjrs pas chez moi
répose dans ta bal
merci encore
Dans tes colonnes des derniers mois,
Tu as dans ta colonne G, un résidu de quelque chose dans une des cellules,
ta formule fin = Application.CountA(Range("g:g")) + 1
comptabilise une entrée de trop.
Assure-toi de sélectionner la totalité de la colonne G pour les mois problèmes,
et appuies sur Del , cela va régler ton problème !
Tu pourrais aussi utiliser la formule suivante :
Fin = .Range("G65536").End(xlUp)(2).Row
"magic-dd" <magicconcours@gmail.com> a écrit dans le message de news:
1159737740.138175.8950@c28g2000cwb.googlegroups.com...
merci michel
Tu as dans ta colonne G, un résidu de quelque chose dans une des cellules, ta formule fin = Application.CountA(Range("g:g")) + 1 comptabilise une entrée de trop.
Assure-toi de sélectionner la totalité de la colonne G pour les mois problèmes, et appuies sur Del , cela va régler ton problème !
Tu pourrais aussi utiliser la formule suivante : Fin = .Range("G65536").End(xlUp)(2).Row
"magic-dd" a écrit dans le message de news:
merci michel
cela ne marche tjrs pas chez moi
répose dans ta bal
merci encore
Mytå
Salut le Forum
Ta macro adaptée mgic-dd
Sub feu()
Dim Ctrl As Control Dim fin As Integer Dim Feuille As String
For Each Ctrl In UsfOpeFix.Controls If TypeName(Ctrl) = "CheckBox" Then If Ctrl.Value = True Then With ThisWorkbook With Sheets(Ctrl.ControlTipText) .Activate .Range("B65536").End(xlUp).Offset(1, 0).Value = UsfOpeFix.Tdate.Value .Range("B65536").End(xlUp).Offset(0, 1).Value = UsfOpeFix.Ttype.Value .Range("B65536").End(xlUp).Offset(0, 2).Value = UsfOpeFix.Tops.Value .Range("B65536").End(xlUp).Offset(0, 3).Value = UsfOpeFix.Tdeb.Value .Range("B65536").End(xlUp).Offset(0, 4).Value = UsfOpeFix.Tcred.Value fin = Application.CountA(Range("g:g")) + 1 .Range("G" & fin).Formula = "=$G$3-SUM(E$2:E" & fin & ")+SUM(F$2:F" & fin & ")" End With End With Ctrl.Value = False 'On efface la sélection End If End If Next Ctrl
For Each Ctrl In UsfOpeFix.Controls
If TypeName(Ctrl) = "CheckBox" Then
If Ctrl.Value = True Then
With ThisWorkbook
With Sheets(Ctrl.ControlTipText)
.Activate
.Range("B65536").End(xlUp).Offset(1, 0).Value = UsfOpeFix.Tdate.Value
.Range("B65536").End(xlUp).Offset(0, 1).Value = UsfOpeFix.Ttype.Value
.Range("B65536").End(xlUp).Offset(0, 2).Value = UsfOpeFix.Tops.Value
.Range("B65536").End(xlUp).Offset(0, 3).Value = UsfOpeFix.Tdeb.Value
.Range("B65536").End(xlUp).Offset(0, 4).Value = UsfOpeFix.Tcred.Value
fin = Application.CountA(Range("g:g")) + 1
.Range("G" & fin).Formula = "=$G$3-SUM(E$2:E" & fin & ")+SUM(F$2:F" & fin &
")"
End With
End With
Ctrl.Value = False 'On efface la sélection
End If
End If
Next Ctrl
For Each Ctrl In UsfOpeFix.Controls If TypeName(Ctrl) = "CheckBox" Then If Ctrl.Value = True Then With ThisWorkbook With Sheets(Ctrl.ControlTipText) .Activate .Range("B65536").End(xlUp).Offset(1, 0).Value = UsfOpeFix.Tdate.Value .Range("B65536").End(xlUp).Offset(0, 1).Value = UsfOpeFix.Ttype.Value .Range("B65536").End(xlUp).Offset(0, 2).Value = UsfOpeFix.Tops.Value .Range("B65536").End(xlUp).Offset(0, 3).Value = UsfOpeFix.Tdeb.Value .Range("B65536").End(xlUp).Offset(0, 4).Value = UsfOpeFix.Tcred.Value fin = Application.CountA(Range("g:g")) + 1 .Range("G" & fin).Formula = "=$G$3-SUM(E$2:E" & fin & ")+SUM(F$2:F" & fin & ")" End With End With Ctrl.Value = False 'On efface la sélection End If End If Next Ctrl
A ) Il est préférable, souhaitable ... d'utiliser cette formule Fin = .Range("G65536").End(xlUp)(2).Row au lieu de : fin = Application.CountA(Range("g:g")) + 1
B ) Application.ScreenUpdating = False Application.ScreenUpdating = True
Ces 2 lignes de code sont totalement inutiles. Tu fais comme tu veux, ce n'est qu'une suggestion !
"Mytå" a écrit dans le message de news:
Salut le Forum
Ta macro adaptée mgic-dd
Sub feu()
Dim Ctrl As Control Dim fin As Integer Dim Feuille As String
For Each Ctrl In UsfOpeFix.Controls If TypeName(Ctrl) = "CheckBox" Then If Ctrl.Value = True Then With ThisWorkbook With Sheets(Ctrl.ControlTipText) .Activate .Range("B65536").End(xlUp).Offset(1, 0).Value = UsfOpeFix.Tdate.Value .Range("B65536").End(xlUp).Offset(0, 1).Value = UsfOpeFix.Ttype.Value .Range("B65536").End(xlUp).Offset(0, 2).Value = UsfOpeFix.Tops.Value .Range("B65536").End(xlUp).Offset(0, 3).Value = UsfOpeFix.Tdeb.Value .Range("B65536").End(xlUp).Offset(0, 4).Value = UsfOpeFix.Tcred.Value fin = Application.CountA(Range("g:g")) + 1 .Range("G" & fin).Formula = "=$G$3-SUM(E$2:E" & fin & ")+SUM(F$2:F" & fin & ")" End With End With Ctrl.Value = False 'On efface la sélection End If End If Next Ctrl
A ) Il est préférable, souhaitable ... d'utiliser cette formule
Fin = .Range("G65536").End(xlUp)(2).Row
au lieu de :
fin = Application.CountA(Range("g:g")) + 1
B ) Application.ScreenUpdating = False
Application.ScreenUpdating = True
Ces 2 lignes de code sont totalement inutiles.
Tu fais comme tu veux, ce n'est qu'une suggestion !
"Mytå" <Myt@discussions.microsoft.com> a écrit dans le message de news:
F62E18B4-419F-4DD8-880F-D4C7F27AF884@microsoft.com...
Salut le Forum
Ta macro adaptée mgic-dd
Sub feu()
Dim Ctrl As Control
Dim fin As Integer
Dim Feuille As String
For Each Ctrl In UsfOpeFix.Controls
If TypeName(Ctrl) = "CheckBox" Then
If Ctrl.Value = True Then
With ThisWorkbook
With Sheets(Ctrl.ControlTipText)
.Activate
.Range("B65536").End(xlUp).Offset(1, 0).Value = UsfOpeFix.Tdate.Value
.Range("B65536").End(xlUp).Offset(0, 1).Value = UsfOpeFix.Ttype.Value
.Range("B65536").End(xlUp).Offset(0, 2).Value = UsfOpeFix.Tops.Value
.Range("B65536").End(xlUp).Offset(0, 3).Value = UsfOpeFix.Tdeb.Value
.Range("B65536").End(xlUp).Offset(0, 4).Value = UsfOpeFix.Tcred.Value
fin = Application.CountA(Range("g:g")) + 1
.Range("G" & fin).Formula = "=$G$3-SUM(E$2:E" & fin & ")+SUM(F$2:F" & fin &
")"
End With
End With
Ctrl.Value = False 'On efface la sélection
End If
End If
Next Ctrl
A ) Il est préférable, souhaitable ... d'utiliser cette formule Fin = .Range("G65536").End(xlUp)(2).Row au lieu de : fin = Application.CountA(Range("g:g")) + 1
B ) Application.ScreenUpdating = False Application.ScreenUpdating = True
Ces 2 lignes de code sont totalement inutiles. Tu fais comme tu veux, ce n'est qu'une suggestion !
"Mytå" a écrit dans le message de news:
Salut le Forum
Ta macro adaptée mgic-dd
Sub feu()
Dim Ctrl As Control Dim fin As Integer Dim Feuille As String
For Each Ctrl In UsfOpeFix.Controls If TypeName(Ctrl) = "CheckBox" Then If Ctrl.Value = True Then With ThisWorkbook With Sheets(Ctrl.ControlTipText) .Activate .Range("B65536").End(xlUp).Offset(1, 0).Value = UsfOpeFix.Tdate.Value .Range("B65536").End(xlUp).Offset(0, 1).Value = UsfOpeFix.Ttype.Value .Range("B65536").End(xlUp).Offset(0, 2).Value = UsfOpeFix.Tops.Value .Range("B65536").End(xlUp).Offset(0, 3).Value = UsfOpeFix.Tdeb.Value .Range("B65536").End(xlUp).Offset(0, 4).Value = UsfOpeFix.Tcred.Value fin = Application.CountA(Range("g:g")) + 1 .Range("G" & fin).Formula = "=$G$3-SUM(E$2:E" & fin & ")+SUM(F$2:F" & fin & ")" End With End With Ctrl.Value = False 'On efface la sélection End If End If Next Ctrl