Macro excuté sur 5 feuilles
Bonjour tout le monde.
j'ai un petit souci, je suis débutante en VbA et j'ai besoin de votre aide.
Mon problème est le suivant:
j'ai réalise un macro pour afficher un formulaire et remplir un tableau avec des informations différentes
Exemple:
Un tableau pour chaque partenaire ( un tableau par feuille)
pour 5 partenaires j'ai besoin de faire 5 feuilles.
Mon code vba fonctionne correctement avec un userfrom mais seulement pour la première feuille.
J'ai essayé de changer mon code pour que le macro soit appliqué pour toutes les feuilles et ça marche pas
voila le code ...
Private Sub UserForm_Initialize()
Dim J As Long
Dim Ws As Worksheet
partenaireBox.ColumnCount = 1
partenaireBox.List() = Array("AB", "BC", "CD", "DE", "EF")
tacheBox.List() = Array("Envoi jeux test (émission) ", "1er retour (émission)", "1er retour analyse (émission)", "2 eme retour (émission)", "2eme retour analyse (émission)", "3 eme retour (émission)", "3 eme retour analyse (émission)", "restitution facture 32", "restitution en clair", "restitution en Brut", "analyse fichier partenaire", "Analyse Liste recapitulative (émission)", "Analyse Liste recapitulative(réception)", "1er retour (émission)", "1er retour analyse (reception)", "2 eme retour (reception)", "2eme retour analyse (reception)", "3 eme retour (reception)", "3 eme retour analyse (reception)", "4 eme retour (émission)", "4 eme retour analyse (émission)", "archivage", "Autre")
dateBox.Value = Format(Now, "dd/mm/yyyy")
Set Ws = Sheets("AB")
With Me.numeroBox
For J = 2 To Ws.Range("A" & Rows.Count).End(xlUp).Row
.AddItem Ws.Range("A" & J)
Next J
End With
dureeBox.Visible = True
remarqueBox.Visible = True
End SubPrivate Sub AjouterButton_Click()
Unload Me
Dim num As Integer, LignVide1 As Integer, dernierID As Integer
Dim L As Integer
Dim rien
Dim Ws As Worksheet
'Afficher le nouvel ID dans formulaire
Me.numeroBox = dernierID + 1
'Recherche de l'ID du dernier client
dernierID = WorksheetFunction.Max(Range("A:A"))
LignVide1 = Range("A" & Rows.Count).End(xlUp).Row + 1
'controle saisie des 3 criteres d identification'
If partenaireBox = rien Then
MsgBox "Vous devez renseigner un partenaire.", 0, "Information"
Unload UserForm1
UserForm1.Show
ElseIf tacheBox = rien Then
MsgBox "Vous devez renseigner une tache.", 0, "Information"
Unload UserForm1
UserForm1.Show
ElseIf dureeBox = rien Then
MsgBox "Vous devez renseigner une durée.", 0, "Information"
Unload UserForm1
UserForm1.Show
ElseIf MsgBox("Confirmez-vous l’insertion de ce nouveau contact ? ", vbYesNo, "Demande de confirmation d’ajout") = vbYes Then
L = Sheets("AB").Range("a65536").End(xlUp).Row + 1
'Ecrire le nouveau n° dans la feuille Base Clients
Me.numeroBox = dernierID + 1
Range("A" & LignVide1) = dernierID + 1
Range("B" & L).Value = partenaireBox
Range("C" & L).Value = tacheBox
Range("D" & L).Value = dateBox
Range("E" & L).Value = dureeBox
Range("F" & L).Value = remarqueBox
End If
End Submacro
Sub Formulaire()
UserForm1.Show
End Sub
Cela dépend ou tu a écris le code....
et peut être le faite que ca soit des "Private sub" et non des "Sub" ?
Merci pour votre retour.
j'explique
sur la feuille j'ai un boutton pour ouvrir le formulaire à l'aide d'un marco.
le formulaire s'ouvre pour les 5 feuilles "AB", "BC", "CD", "DE", "EF"
mon problème quand je saisie les informations dans le formulaire et je clique ajouter:
Pour la feuille 1: le tableau se remplit normalement.
Pour les autres feuilles : les informations se rajoutent mais pas d'une façon correcte.
peut être dans Sub AjouterButton_Click() que cette ligne doit être changer mais je sais pas comment pour l'appliquer sur les 5 feuilles
L = Sheets("AB").Range("a65536").End(xlUp).Row + 1