Bonjour,
Bon je vais essayer d'être la plus explicite possible avec mon langage de débutante :
Je travaille actuellement sur une base de donnée (onglet "recap") qui représente un listing client et le chiffrage de travaux à apporter chez eux : ma colonne A est l'identifiant client puis les suivantes sont les nom, adresses, etc ...
J'ai un deuxième onglet qui représente un modèle de fiche (onglet "modele") : dedans j'ai complété ma fiche à l'aide de formule pour que quand je rentre dans la case "K2" le numéro de l'identifiant tout se met à jour automatiquement.
Afin d'éviter de répéter 100 fois la même manip de copier-coller l'onglet modèle, renommer au bon identifiant et changer l'identifiant dans la fiche … je souhaiterai créer une macro.
En faisant des recherches je suis tombé sur un site très intéressant qui parlait de mon soucis mais en adaptant selon ma demande je n'arrive pas à la lancer correctement :
Sub CreeOnglets()
Application.ScreenUpdating = False
supOnglets
Set bd = Sheets("recap")
ligrecap = 4
Do While ligBD <= bd.[A65000].End(xlUp).Row
nom = bd.Cells(ligrecap, 4)
Sheets("modele").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = "jf_" & nom
Set fiche = Sheets("jf_" & nom)
fiche.Range("K2").Value = nom
fiche.Range("K2").Value = bd.Cells(ligrecap, "A")
ligrecap = ligrecap + 1
Loop
End Sub
Ma première question est :
Les problèmes sont qu'il renomme mon onglet "modele" (en enlevant la ligne ça plante quand même) et que tous les onglets qu'ils crée sont bien à jour avec l'identifiant en case "K2" mais les noms de fichiers sont sur les noms des clients et non les identifiants.
Avec quelle formule et où je modifie la macro pour que les noms des onglets se nomment par l'identifiant rentrer automatiquement à la case "K2" ?
Ma deuxième question est :
Depuis que j'ai relancé un excel sans enregistrer le fichier exemple type trouvé sur le site et en copiant collant simplement sa formule avec les bons noms de macros,
Excel m'affiche un message d'erreur "Erreur de compilation : sub ou function non définie". Vous avez des idées du problème ?
Merci d'avance pour votre aide !
Bon je vais essayer d'être la plus explicite possible avec mon langage de débutante :
Je travaille actuellement sur une base de donnée (onglet "recap") qui représente un listing client et le chiffrage de travaux à apporter chez eux : ma colonne A est l'identifiant client puis les suivantes sont les nom, adresses, etc ...
J'ai un deuxième onglet qui représente un modèle de fiche (onglet "modele") : dedans j'ai complété ma fiche à l'aide de formule pour que quand je rentre dans la case "K2" le numéro de l'identifiant tout se met à jour automatiquement.
Afin d'éviter de répéter 100 fois la même manip de copier-coller l'onglet modèle, renommer au bon identifiant et changer l'identifiant dans la fiche … je souhaiterai créer une macro.
En faisant des recherches je suis tombé sur un site très intéressant qui parlait de mon soucis mais en adaptant selon ma demande je n'arrive pas à la lancer correctement :
Sub CreeOnglets()
Application.ScreenUpdating = False
supOnglets
Set bd = Sheets("recap")
ligrecap = 4
Do While ligBD <= bd.[A65000].End(xlUp).Row
nom = bd.Cells(ligrecap, 4)
Sheets("modele").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = "jf_" & nom
Set fiche = Sheets("jf_" & nom)
fiche.Range("K2").Value = nom
fiche.Range("K2").Value = bd.Cells(ligrecap, "A")
ligrecap = ligrecap + 1
Loop
End Sub
Ma première question est :
Les problèmes sont qu'il renomme mon onglet "modele" (en enlevant la ligne ça plante quand même) et que tous les onglets qu'ils crée sont bien à jour avec l'identifiant en case "K2" mais les noms de fichiers sont sur les noms des clients et non les identifiants.
Avec quelle formule et où je modifie la macro pour que les noms des onglets se nomment par l'identifiant rentrer automatiquement à la case "K2" ?
Ma deuxième question est :
Depuis que j'ai relancé un excel sans enregistrer le fichier exemple type trouvé sur le site et en copiant collant simplement sa formule avec les bons noms de macros,
Excel m'affiche un message d'erreur "Erreur de compilation : sub ou function non définie". Vous avez des idées du problème ?
Merci d'avance pour votre aide !