VBA
Bonjour
j'ai mis en place un formulaire ou les éléments s' enregistres ligne par ligne dans le tableau "recap"
a cela je voudrai sur le modèle via l'onglet "trame "
a chaque nouvelle ligne sur validation du bouton valider de mon formulaire ,je voudrais qu'une fiche soit crée sur un nouvelle onglet avec tout les éléments rentré dans le formulaire sur le support de ma trame
et que cet onglet porte le nom de ma colonne B soit B10 qui actuellement il y a une formule "=CONCATENER(Y10;"_"; Z10;"_";AE10)"
mon formulaire et la création du nouvelle onglet fonctionne mais mon problème est sur appellation de l'onglet et sur l'enregistrement des données
du formulaire
je vous remercie d'avance de votre aide
Bonjour
j'ai mis en place un formulaire ou les éléments s' enregistres ligne par ligne dans le tableau "recap"
a cela je voudrai sur le modèle via l'onglet "trame "
a chaque nouvelle ligne sur validation du bouton valider de mon formulaire ,je voudrais qu'une fiche soit crée sur un nouvelle onglet avec tout les éléments rentré dans le formulaire sur le support de ma trame
et que cet onglet porte le nom de ma colonne B soit B10 qui actuellement il y a une formule "=CONCATENER(Y10;"_"; Z10;"_";AE10)"
mon formulaire et la création du nouvelle onglet fonctionne mais mon problème est sur appellation de l'onglet et sur l'enregistrement des données
du formulaire
je vous remercie d'avance de votre aide
Re bonjour mon problème est bien sur la création d'onglet la macro me produit 3 onglet et mes donne ne s'enregistre pas dans la fiche et mon second problème est quand je réalise la deuxième fiche
sur le fichier joints j 'ai supprimé ma boucle mais le problème persiste
merci e votre aide
Private Sub CommandButton2_Click() 'Bouton VALIDER
Dim NewLig As Long
Dim c As Range
With Sheets("Recap")
NewLig = Application.Max(10, .Range("A" & Rows.Count).End(xlUp).Row + 1)
.Range("A" & NewLig).Value = Application.WorksheetFunction.Max(Range("A:A")) + 1
.Range("C" & NewLig).Value = TextBoxobjet
.Range("Y" & NewLig).Value = ComboBox4
.Range("Z" & NewLig).Value = TextBoxfiche
.Range("AA" & NewLig).Value = CDate(TextBoxdate)
.Range("AB" & NewLig).Value = TextBoximputation
.Range("AC" & NewLig).Value = TextBoxlocalisation
.Range("AD" & NewLig).Value = ComboBox1
.Range("D" & NewLig).Value = ComboBox1
.Range("AE" & NewLig).Value = TextBoxannée
.Range("AF" & NewLig).Value = CheckBox1
.Range("AG" & NewLig).Value = CheckBox2
.Range("AH" & NewLig).Value = CheckBox3
.Range("AI" & NewLig).Value = TextBoxconstat
.Range("AJ" & NewLig).Value = TextBoxrisque
.Range("AK" & NewLig).Value = TextBoxorigine
.Range("AL" & NewLig).Value = TextBoxconservatoires
.Range("AM" & NewLig).Value = TextBoxtravaux
.Range("AN" & NewLig).Value = TextBoxobservation
.Range("AO" & NewLig).Value = TextBoxconstructeur
.Range("AP" & NewLig).Value = TextBoxdureevie1
.Range("AQ" & NewLig).Value = TextBoxdureevie2
.Range("AR" & NewLig).Value = TextBoximage
End With
Application.ScreenUpdating = False
'On crée les onglets qui sont listés à partir de la cellule
'A2 de l'onglet nommé Liste
Set c = Worksheets("RECAP").Range("B10") 'cellule de départ
'on copie le modèle en dernier
Worksheets("TRAME").Copy After:=Worksheets(ThisWorkbook.Sheets.Count)
With Worksheets(ThisWorkbook.Sheets.Count) 'avec l'onglet créé
.Name = c.Value 'je renome
'Je remplit mon modèle comme je veut...
.Range("B3") = TextBoxobjet
.Range("A6") = TextBoxfiche
.Range("B6") = TextBoxdate
.Range("C6") = TextBoximputation
.Range("D6") = TextBoxlocalisation
.Range("E6") = ComboBox1
.Range("F6") = TextBoxannée
.Range("G6") = ComboBox4
.Range("A9") = TextBoxconstat
.Range("E11") = CheckBox1
.Range("E12") = CheckBox2
.Range("E13") = CheckBox3
.Range("A16") = TextBoxrisque
.Range("A21") = TextBoxorigine
.Range("A26") = TextBoxconservatoires
.Range("A30") = TextBoxtravaux
.Range("A35") = TextBoxobservation
.Range("H15") = TextBoxconstructeur
.Range("K17") = TextBoxdureevie1
.Range("K18") = TextBoxdureevie2
.Range("H20") = TextBoximage
End With
Application.ScreenUpdating = True
Unload UserForm1
End Sub