Modèle a partir d'une liste déroulante

Bonjour,

J'ai un peu de mal en code VBA, alors je demande votre aide.

Je souhaiterai générer un tableau en reprenant les information sélectionner de la liste déroulante. (modèle du tableau dans l'onglet)

Exemple: Je sélectionne l'arrêt Ablon : ecole, je souhaiterai que le nom de l'arrêt se retrouve dans le modèle générer à l'aide d'un bouton, dans la case "Nom du point d'arrêt :" ainsi que le nom de la commune dans le champ : "Commune"

J'aimerai aussi que l'onglet générer se nomme le nom de l'arrêt.

Merci pour votre qui pourrait m'éclaircir car j'avoue que là je suis bloqué.

Bonjour kogo14000, le forum,

Un essai:....

Option Explicit

Sub AjoutOnglet()

Dim Sh As Worksheet, Ws As Worksheet

Set Ws = Sheets("Modèle_type")
 Set Sh = Worksheets.Add(AFTER:=Sheets(Sheets.Count))

 Ws.Cells.Copy

 With Sh
  .Range("A1").PasteSpecial xlPasteAll
  .Range("B3") = Sheets("liste").Range("B3")
  .Range("B4") = Sheets("liste").Range("A3")
  .Range("A1").Select
  .Name = Range("B4").Value
 End With

 End Sub

Cordialement,

Parfait c'est exactement ce que j’attendais ! Merci beaucoup pour votre reactivité ! Si je souhaite retranscrire par exemple le numéro de ligne sur le formulaire généré, quel ligne de code dois je ajouter à ma base ? Merci encore !

bonjour

une autre macro pour copy du modèle

Sub AjoutOnglet()
Dim Fnom$
Fnom = Range("A3").Value
On Error Resume Next
    Feuil3.Copy after:=Sheets(Sheets.Count)
    ActiveSheet.Name = Fnom
Err.Clear
End Sub

A+

Maurice

Bonjour Kogo14000, archer, le forum,

retranscrire par exemple le numéro de ligne sur le formulaire généré

C'est quoi le numéro ? alias ?

Cordialement,

PS: tu remarqueras que j'avais supprimé les ":" des arrêts car impossible de nommer un onglet avec; tu peux mettre un tiret si tu le souhaites.

Et bien je souhaiterai rajouter une colonne à ma base de données qui s’appellera "N° de ligne" et que je remplierai plus tard pour ensuite, mettre une liste déroulante à dans l'onglet "liste"

Cordialement,

Re,

je souhaiterai rajouter une colonne à ma base de données qui s’appellera "N° de ligne"

Ok, ça ne change rien au code :

Tu rajouteras une colonne N°Ligne dans ta feuille "Liste" avec une RechercheV pour trouver le n°de ligne correspondant.

(Dans l'exemple ci-joint j'ai pris Alias comme référence, tu modifieras).

Voici une autre version avec test si l'onglet existe déjà, message "L'onglet existe déjà" et donc on ne le crée pas.

En espérant avoir répondu à ta demande,

Cordialement,

Parfait !

Dernière chose et je ne vous embête plus ....

Est ce possible de créer un lien hyper texte sur la liste déroulante des arrêt à chaque génération de modèle pour y avoir accès directement par la suite ? Car le but étant de créer un annuaire des arrêts de bus à chaque génération de modèle.

Merci et bonne journée !

Good Job !

Re,

Est ce possible de créer un lien hyper texte sur la liste déroulante des arrêt à chaque génération de modèle pour y avoir accès directement par la suite ?

Désolé, je ne sais pas faire....

Une proposition avec feuille "Sommaire".....

@+

c'est très bien !

Bonne journée et merci à vous c'est gentil !

Bonjour

Je vois qu'on a trouvé une solution à ton problème

Je m'y suis penchée aussi

Mon astuce est que si la feuille existe, le logiciel lui ajoute un index que j'ai discrètement mis dans la cellule Z1.

Voici mon code :

Option Compare Text
Sub Rectangle1_Cliquer()
Dim Com As Integer, Arret As String, i As Integer, Sh As Worksheet, Sht As Worksheet, Nom As String
If IsEmpty(Range("Arret")) Or IsEmpty(Range("Commune")) Then Exit Sub
    If Range("Arret").Value Like "*:*" Then
    Com = Range("Indexnom").Value
     Sheets("Modèle_type").Activate
       ActiveSheet.Copy After:=Sheets(5)
          With ActiveSheet
             .Range("B3") = Sheets("Liste").Range("Commune").Value
             .Range("B4") = Sheets("Liste").Range("Arret").Value
            On Error Resume Next
            Nom = Replace(Sheets("liste").Range("Arret").Text, ":", "")
            'MsgBox Nom
           If CherchOnglet(Nom) = True Then
             .Name = Nom & " " & Com
             Com = Com + 1
             Range("Indexnom").Value = Com
             MsgBox Com
           Else
             .Name = Nom
           End If
          End With
      End If
        Err.Clear
End Sub

Function CherchOnglet(Onglet As String) As Boolean

    Dim Classeur As Worksheet

    CherchOnglet = False

    On Error Resume Next
    Set Classeur = Worksheets(Onglet)
    If Not Classeur Is Nothing Then
        CherchOnglet = True
    End If

End Function

Bonjour

pour la sélection des ongles faire Ctrl+k

a voir

A+

Maurice

Merci Nathalie, cela donnerai quoi sur mon fichier excel, ou est ce que je peux insérer le code ?

Rechercher des sujets similaires à "modele partir liste deroulante"