Appel d'une fonction
gopo
Messages postés
76
Statut
Membre
-
gopo Messages postés 76 Statut Membre -
gopo Messages postés 76 Statut Membre -
Bonjour,
Je voudrais savoir comment appeler une fonction/procedure dans une aute fonction/procedure :
Je veux apellez : Public Sub lanch() a la fin de Public Sub CommandButton1_Click()
merci !
Je voudrais savoir comment appeler une fonction/procedure dans une aute fonction/procedure :
Je veux apellez : Public Sub lanch() a la fin de Public Sub CommandButton1_Click()
merci !
Configuration: Windows XP Internet Explorer 6.0
6 réponses
-
c'est tout simple, apres Public Sub CommandButton1_Click(), tu ecris à la ligne lanch(), et si tu veux, tu fais End Sub
Comme sa :Public Sub CommandButton1_Click() lanch() End sub
-
-
-
Erreur de syntaxe ... =(
Enfaite j'ai un problème j'arrive a appeler mes fonction avec call fonction.
Mais j'ai un souci vraiement bizarre... je vous met mon code ( mon code est vraiment sale, j'ai rien trouvé pour raccourcir le code ... ) :
Public Sub CommandButton1_Click() Dim Variable1 As String Dim Variable2 As String Dim Variable3 As String Dim Variable4 As String Dim Variable5 As String Dim Variable6 As String Dim Variable7 As String Dim i As Integer Dim j As Integer Dim h As Integer i = 9 For i = 9 To 846 Step 27 If Cells(i, 2) = "753220 - PARIS KELLER ACP" Then For j = 5 To 26 Step 1 If Cells(i + 1, j) = "Janvier" Then ActiveWorkbook.Sheets("Détail ACP").Select Variable1 = ActiveSheet.Cells(i + 3, j).Value Variable2 = ActiveSheet.Cells(i + 8, j).Value Variable3 = ActiveSheet.Cells(i + 12, j).Value Variable4 = ActiveSheet.Cells(i + 14, j).Value Variable5 = ActiveSheet.Cells(i + 16, j).Value Variable6 = ActiveSheet.Cells(i + 19, j).Value Variable7 = ActiveSheet.Cells(i + 20, j).Value Workbooks.Open ActiveWorkbook.Path & "\TBM ACP.xls" ActiveWorkbook.Sheets("Paris Keller").Cells(10, 7).Value = Variable1 ActiveWorkbook.Sheets("Paris Keller").Cells(11, 7).Value = Variable2 ActiveWorkbook.Sheets("Paris Keller").Cells(12, 7).Value = Variable3 ActiveWorkbook.Sheets("Paris Keller").Cells(14, 7).Value = Variable4 ActiveWorkbook.Sheets("Paris Keller").Cells(15, 7).Value = Variable5 ActiveWorkbook.Sheets("Paris Keller").Cells(16, 7).Value = Variable6 ActiveWorkbook.Sheets("Paris Keller").Cells(18, 7).Value = Variable7 ActiveWorkbook.Sheets("Paris Keller").Select Exit For End If Next Call argenteuil_92 Sub argenteuil_92() Dim Variable1 As String Dim Variable2 As String Dim Variable3 As String Dim Variable4 As String Dim Variable5 As String Dim Variable6 As String Dim Variable7 As String Dim i As Integer Dim j As Integer Dim h As Integer For i = 9 To 6000 Step 27 If Cells(i, 2) = "950820 - ARGENTEUIL 92 ACP" Then For j = 5 To 846 Step 1 If Cells(i + 1, j) = "Janvier" Then 'ActiveWorkbook.Sheets("Détail ACP").Select Variable1 = ActiveSheet.Cells(i + 3, j).Value Variable2 = ActiveSheet.Cells(i + 8, j).Value Variable3 = ActiveSheet.Cells(i + 12, j).Value Variable4 = ActiveSheet.Cells(i + 14, j).Value Variable5 = ActiveSheet.Cells(i + 16, j).Value Variable6 = ActiveSheet.Cells(i + 19, j).Value Variable7 = ActiveSheet.Cells(i + 20, j).Value ' Workbooks.Open ActiveWorkbook.Path & "\TBM ACP.xls" ActiveWorkbook.Sheets("ARGENTEUIL 92").Cells(10, 7).Value = Variable1 ActiveWorkbook.Sheets("ARGENTEUIL 92").Cells(11, 7).Value = Variable2 ActiveWorkbook.Sheets("ARGENTEUIL 92").Cells(12, 7).Value = Variable3 ActiveWorkbook.Sheets("ARGENTEUIL 92").Cells(14, 7).Value = Variable4 ActiveWorkbook.Sheets("ARGENTEUIL 92").Cells(15, 7).Value = Variable5 ActiveWorkbook.Sheets("ARGENTEUIL 92").Cells(16, 7).Value = Variable6 ActiveWorkbook.Sheets("ARGENTEUIL 92").Cells(18, 7).Value = Variable7 ActiveWorkbook.Sheets("ARGENTEUIL 92").Select Exit For End If Next Exit For End If Next End Sub
Ma fonction copie les valeur souhaité selon i, et les copie dans un autre classeur, ce qui se passe ( ce qui ne devrait pas ce passé ) c'est que tout ce passe bien dans ma boucle aucune erreur ( F8 : ok ) mais ca ne copie rien ! ca efface mes celulle de mon nouveau classeur et ca ne colle rien de s'ki a été copié avant ... pourquoi ?? -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
attend je revien, le temps de nettoyer mes yeux et bien lire ton code
-
je remet le code en propre , je vais suprimé ski es répétitif...
Prend en compte ce code ci :
Public Sub CommandButton1_Click() Dim Variable1 As String Dim Variable2 As String Dim i As Integer Dim j As Integer Dim h As Integer i = 9 For i = 9 To 846 Step 27 If Cells(i, 2) = "753220 - PARIS KELLER ACP" Then For j = 5 To 26 Step 1 If Cells(i + 1, j) = "Janvier" Then ActiveWorkbook.Sheets("Détail ACP").Select Variable1 = ActiveSheet.Cells(i + 3, j).Value Variable2 = ActiveSheet.Cells(i + 8, j).Value Workbooks.Open ActiveWorkbook.Path & "\TBM ACP.xls" ActiveWorkbook.Sheets("Paris Keller").Cells(10, 7).Value = Variable1 ActiveWorkbook.Sheets("Paris Keller").Cells(11, 7).Value = Variable2 ActiveWorkbook.Sheets("Paris Keller").Select Exit For End If Next Exit For End If Next For i = 9 To 846 Step 27 If Cells(i, 2) = "750670 - PARIS BERCY EXPO ACP" Then For j = 5 To 26 Step 1 If Cells(i + 1, j) = "Janvier" Then ActiveWorkbook.Sheets("Détail ACP").Select Variable1 = ActiveSheet.Cells(i + 3, j).Value Variable2 = ActiveSheet.Cells(i + 8, j).Value Workbooks.Open ActiveWorkbook.Path & "\TBM ACP.xls" ActiveWorkbook.Sheets("PARIS BERCY").Cells(10, 7).Value = Variable1 ActiveWorkbook.Sheets("PARIS BERCY").Cells(11, 7).Value = Variable2 ActiveWorkbook.Sheets("PARIS BERCY").Select Exit For End If Next Exit For End If Next End Sub
Tout ce passe bien mais, les ligne qui sont soulignée serve 1) a ouvrir la page ou sera copié les celulles et 2) a ouvrir le classeur de destination.
Si je laisse l'ouverture de feuille & du nouveau classeur sur la deuxieme procedure, ca bug, si je l'enleve ca copie rien ca ne fait que de supprimé les celulle du classeur TBM ACP .. donc je pense qu'il faudrai que j'y mette la feuille souhaité et le classeur de destination sans que ca fasse bugué