Bonjour à tous
Voilà, je suis extrêmement novice en VBA et suis en train de me perdre avec une macro que j'essaie d'utiliser/ créer afin de créer de nouveaux onglets en suivant un onglet modèle.
En gros, j'ai trouvé ce code mis à disposition par Mr Jacques Bois Gontier (http://boisgontierjacques.free.fr/pages_site/cellules.htm)
	
	
	
	
	
		
Ce code crée une nouvelle feuille (suivant un modèle) avec les informations rentrées dans une base de données. (c'est ce que je recherche)
Dans cette configuration là, la base de données est construite ligne par ligne (le code va chercher une nouvelle entrée la ligne suivante jusqu'à ce qu'il tombe sur une ligne vide).
Dans mon cas, il faudrait que le code ailler chercher une nouvelle colonne jusqu'à ce que la suivante soit vide.
Est-ce que vous pouvez m'aider à modifier ce code dans ce sens ?
Je vous remercie de votre aide
Bonne journée
Anthony
	
		
			
		
		
	
				
			Voilà, je suis extrêmement novice en VBA et suis en train de me perdre avec une macro que j'essaie d'utiliser/ créer afin de créer de nouveaux onglets en suivant un onglet modèle.
En gros, j'ai trouvé ce code mis à disposition par Mr Jacques Bois Gontier (http://boisgontierjacques.free.fr/pages_site/cellules.htm)
		VB:
	
	
	Sub CreeOnglets()
   Application.ScreenUpdating = False
   supOnglets
   Set bd = Sheets("bd")
   bd.[A1].CurrentRegion.Sort Key1:=bd.Range("A2"), Order1:=xlAscending, Header:=xlGuess
   ligBD = 2
   Do While ligBD <= bd.[A65000].End(xlUp).Row
       nom = bd.Cells(ligBD, 1)       ' Premier nom
       Sheets("modèle").Copy After:=Sheets(Sheets.Count)
       ActiveSheet.Name = "F_" & nom
       Set fiche = Sheets("F_" & nom)
       fiche.Range("B3").Value = nom
       fiche.Range("b4").Value = bd.Cells(ligBD, "B")
       ligBD = ligBD + 1
    Loop
End Sub
Sub supOnglets()
  Application.DisplayAlerts = False
  For s = Sheets.Count To 1 Step -1
     If Left(Sheets(s).Name, 2) = "F_" Then Sheets(s).Delete
  Next s
End Sub
Sub exportOnglets()
    CheminAppli = ThisWorkbook.Path
    Application.DisplayAlerts = False
    For i = 1 To Sheets.Count
        If Left(Sheets(i).Name, 2) = "F_" Then
          Sheets(i).Select
          nonglet = ActiveSheet.Name
          ActiveSheet.Copy
          ActiveWorkbook.SaveAs Filename:=CheminAppli & "\" & nonglet
          ActiveWindow.Close
        End If
    Next i
End Sub
Sub consolideOngletsBD()
    ligBD = 2
    Set bd = Sheets("bd")
    For f = 1 To Sheets.Count
        If Left(Sheets(f).Name, 2) = "F_" Then
           bd.Cells(ligBD, "A") = Sheets(f).[B3]
           ligBD = ligBD + 1
        End If
    Next f
End Sub
	Ce code crée une nouvelle feuille (suivant un modèle) avec les informations rentrées dans une base de données. (c'est ce que je recherche)
Dans cette configuration là, la base de données est construite ligne par ligne (le code va chercher une nouvelle entrée la ligne suivante jusqu'à ce qu'il tombe sur une ligne vide).
Dans mon cas, il faudrait que le code ailler chercher une nouvelle colonne jusqu'à ce que la suivante soit vide.
Est-ce que vous pouvez m'aider à modifier ce code dans ce sens ?
Je vous remercie de votre aide
Bonne journée
Anthony
Pièces jointes
			
				Dernière édition: