Gerer deux classeurs avec un seul userform

Bonsoir

désolé du derangement, je suis nouveau ici, j'ai besoin d'aide

j'ai deux classeurs que je dois remplir mais tout dans un meme dossiers, je ne veux pas remplir un classeurs avec un useform et l'autre avec un autre userform.

J'aimerais savoir s'il serait possible de remplir les deux classeurs qui comportent plusieurs feuilles a l'aide d'un seul userform pour que dans le userform quand je remplir les informations et que je clique sur le bouton de commande qui valide, les informations se dirigent dans les classeurs qui leurs sont destiné

J'ai un classeur Client et un classeurs produit .

Le classeur client possede plusieurs feuilles en fonction des noms des clients et le deuxieme classeur a des feuilles qui ont des noms de produit.

Les differentes feuilles s'ajoutent automatiquement quand le mois change (a l'ouverture du fichier)

j'arrive a enregistrer dans l'autre classeurs mais pas comme je veux, je veux pouvoir a l'aide d'un combobox avoir accès a toutes les feuilles des deux classeurs et ensuite enregistrer dans la feuille qu'on désire

Sinon afficher toutes les feuilles du mois actuel et envoyer les informations la ou elles doivent etre

Voici mon bouton valider

Private Sub CommandButton1_Click()
Dim numYear As Integer, numClient As Integer

numClient = InputBox("Veuillez saisir le numéro Client")
numYear = InputBox("Veuillez saisir l'année")

With Workbooks("TAF 1").Sheets("CLIENT " & numClient & " - " & numYear)

x = Now
With Workbooks("TAF 1").Sheets("CLIENT3 - 2020")

            .Range("m1") = ComboBox1.Value

            .Range("A5") = TextBox2.Text
                MsgBox (TextBox2.Text)
            .Range("B5") = TextBox4.Text
            .Range("C5") = TextBox6.Text
            .Range("D5") = TextBox3.Text
            .Range("E5") = TextBox12.Text
            .Range("F5") = TextBox7.Text
            .Range("G5") = TextBox10.Text
            .Range("H5") = TextBox11.Text
            .Range("I5") = TextBox8.Text
            .Range("N5") = x
            .Range("J5") = TextBox13.Text
End With
ComboBox1.Text = ""
TextBox2.Text = ""
TextBox6.Text = ""
TextBox3.Text = ""
TextBox12.Text = ""
TextBox7.Text = ""
TextBox10.Text = ""
TextBox11.Text = ""
TextBox8.Text = ""
TextBox9.Text = ""
TextBox13.Text = ""
TextBox4.Text = ""
MsgBox ("ENREGISTREMENT EFFECTUER")
End With
End Sub

Bonjour,

voici un exemple pour choisir le fichier et les feuilles en fonction du fichier

15doreld-exemple.xlsm (18.84 Ko)

Bonjour comment ça va ?

je n'arrive pas a faire le debogage, on me met une erreur d'execution '9' l'indice n'appartient pas a la selection.

J'aimerais aussi souligner que CLIENT est dans un classeur et PRODUIT dans un autre classeur.

CLIENT a des feuilles qui portent les nom des client et pareil pour produit.

Ex : Le client ABI achete 2 chaussures Puma

l'information va dans la feuille ABI qui se trouve dans le classeur Client et aussi d'autre element de l'information vont dans le classeur Produit plus precisement dans la feuille PUMA

J'espere qu'on se comprend

je n'arrive pas a faire le debogage, on me met une erreur d'execution '9' l'indice n'appartient pas a la selection.

sur quel ligne l'erreur se produit ?

Bonjour, je peux vous envoyer mes deux classeurs afin de voir le probleme ?

re,

as-tu adapter cette ligne pour le nom de ton autre fichier ?

Set wk2 = Workbooks("Produit.xlsm")   'fichier Produit  à adapter

je vous ai envoyé mes fichier en piece jointe

mon probleme est que je veux pouvoir envoyer les informations dans les feuilles sélectionnée.

mais c'est pas le cas, les informations vont sur la feuille de depart

5mes-client.xlsm (9.99 Ko)
3mes-produits.xlsm (35.17 Ko)

re,

à tester,

16mes-produits.xlsm (32.74 Ko)

Grand merci a vous. ça marche parfaitement.

vraiment merci, mais vous avez vu mon bouton qui me permet de créer une nouvelle feuille client ?

je voudrais que lorsque je clique dessus, un message me demandant le nom s'affiche afin de créer la feuille avec un nom .

Dedans aussi j'ai fais une manipulation pour créer les feuilles quand un nouveau mois arrive, mais je ne sais pas comment appliqué sur toutes les pages du classeur donc j'etais obligé d'ecrire moi même les noms des feuilles, pourtant si je dois ajouter un nouveau client ou produit, son classeur doit aussi se mettre a jour quand le mois change

je vous met les deux codes (créer un bouton) et celui qui permet de mettre a jour les pages.

désolé, normalement je devrais mettre probleme resolu

Private Sub CommandButton2_Click()
Dim sheet As Worksheet
Set sheet = ActiveWorkbook.Sheets.Add(After:=ActiveWorkbook.Worksheets(ActiveWorkbook.Worksheets.Count))
End Sub
Dim myMonth As Integer, myYear As Integer, myDate As Date, sc As Long, ee As String, cc As String, a As Long, b As Long

myDate = Date ' enregistre la date d'aujourd'hui dans la variable myDate

myMonth = (Month(myDate) - 1) ' No du mois précédent
myYear = Year(Date) 'No année
ee = ""

If (myMonth) = 0 Then 'si calcul du mois précédent = 0
    myMonth = 12 'mois précédent = 12
    myYear = myYear - 1 'année précédente
End If

cc = "PRODUIT" & "" & (myMonth) & " - " & myYear 'élabore le nom de l'onglet

sc = Sheets.Count 'calcule le nombre de feuilles dans le classeur

a = 1
For a = 1 To sc
    If Sheets(a).Name = cc Then 'vérifie que l'onglet n'existe pas
    End 'sinon fin de programme
    End If
Next a

Sheets("SAVON CHAT").Copy After:=Sheets(1) 'effectue la copie de la feuille Tableau

ActiveSheet.Name = cc 'nomme la nouvelle feuille
Sheets("SAVON CHAT").Select

End Sub

merci de bien vouloir m'aider

re,

je ne comprend pas la question ?

Bonjour

J'ai un classeur Client, dans le classeur client, les feuilles sont représentés par les noms de client afin de pouvoir envoyer les information dans la feuille reservée au client qu'on va selectionner dans le combobox.

ce que je veux faire c'est pouvoir en premier ajouter une feuille dont je choisirai le nom ou cas ou je veux ajouter un nouveau client

et ensuite trouver un code qui va me permettre de me mettre a jour les feuilles de chaque client. Par exemple

JEAN1-2020 ; MOUSSA1 - 2020 et quand le mois change des feuilles s'ajoutent soit JEAN2 - 2020 ; MOUSSA2 - 2020

Je connais un code qui permet de faire ça mais je met dans le code les noms des feuilles,

je veux un code qui s'applique sur toutes les feuilles (ainsi que les nouvelles)

J’espère que j'ai été un peu claire

Si oui, merci de me venir en aide

Rechercher des sujets similaires à "gerer deux classeurs seul userform"