Boucle dans une macro
Résolu
azertyh
Messages postés
121
Date d'inscription
Statut
Membre
Dernière intervention
-
tobas Messages postés 210 Date d'inscription Statut Membre Dernière intervention -
tobas Messages postés 210 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai besoin d'aide pour améliorer ma macro suivante :
ce code crée ces fichiers .csv dans les 2 répertoires 01 et 04 (01 et 04 étant des codes d'établissements), mais comme il y a encore 14 autres établissements, ma macro sera très longue.
comment faire pour créer une boucle, et à chaque boucle, on change la cellule C9 et le répertoire de destination?
merci d'avance.
j'ai besoin d'aide pour améliorer ma macro suivante :
Sub création_article()
'
' création_article Macro
' permet de créer les fichiers csv pour la création d'articles renaissance
'
'
Sheets("données").Select
Range("C9").Select
ActiveCell.FormulaR1C1 = "'01"
ChDir "C:\Users\heri101440\Documents\star\import_rencs\01"
Sheets("gl_accounts_new").Select
ActiveWorkbook.SaveAs Filename:="gl_accounts_new.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("gl_short_codes").Select
ActiveWorkbook.SaveAs Filename:="gl_short_codes.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("product_master_new").Select
ActiveWorkbook.SaveAs Filename:="product_master_new.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("product_warehouse_new").Select
ActiveWorkbook.SaveAs Filename:="product_warehouse_new.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("ic_product_status_new").Select
ActiveWorkbook.SaveAs Filename:="ic_product_status_new.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("sales_prices").Select
ActiveWorkbook.SaveAs Filename:="sales_prices.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("sales_price_lines").Select
ActiveWorkbook.SaveAs Filename:="sales_price_lines.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("str_profil_part_codes").Select
ActiveWorkbook.SaveAs Filename:="str_profil_part_codes.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("ic_product_master_units").Select
ActiveWorkbook.SaveAs Filename:="ic_product_master_units.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("part_uom_conversions").Select
ActiveWorkbook.SaveAs Filename:="part_uom_conversions.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("product_groups").Select
ActiveWorkbook.SaveAs Filename:="product_groups.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("sf_brands").Select
ActiveWorkbook.SaveAs Filename:="sf_brands.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("données").Select
Range("C9").Select
ActiveCell.FormulaR1C1 = "'04"
ChDir "C:\Users\heri101440\Documents\star\import_rencs\04"
Sheets("gl_accounts_new").Select
ActiveWorkbook.SaveAs Filename:="gl_accounts_new.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("gl_short_codes").Select
ActiveWorkbook.SaveAs Filename:="gl_short_codes.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("product_master_new").Select
ActiveWorkbook.SaveAs Filename:="product_master_new.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("product_warehouse_new").Select
ActiveWorkbook.SaveAs Filename:="product_warehouse_new.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("ic_product_status_new").Select
ActiveWorkbook.SaveAs Filename:="ic_product_status_new.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("sales_prices").Select
ActiveWorkbook.SaveAs Filename:="sales_prices.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("sales_price_lines").Select
ActiveWorkbook.SaveAs Filename:="sales_price_lines.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("str_profil_part_codes").Select
ActiveWorkbook.SaveAs Filename:="str_profil_part_codes.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("ic_product_master_units").Select
ActiveWorkbook.SaveAs Filename:="ic_product_master_units.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("part_uom_conversions").Select
ActiveWorkbook.SaveAs Filename:="part_uom_conversions.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("product_groups").Select
ActiveWorkbook.SaveAs Filename:="product_groups.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
Sheets("sf_brands").Select
ActiveWorkbook.SaveAs Filename:="sf_brands.csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
End Sub
ce code crée ces fichiers .csv dans les 2 répertoires 01 et 04 (01 et 04 étant des codes d'établissements), mais comme il y a encore 14 autres établissements, ma macro sera très longue.
comment faire pour créer une boucle, et à chaque boucle, on change la cellule C9 et le répertoire de destination?
merci d'avance.
A voir également:
- Boucle dans une macro
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Jitbit macro recorder - Télécharger - Confidentialité
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Macro word - Guide
- Télé samsung s'éteint et se rallume en boucle - Forum Téléviseurs
4 réponses
Bonjour,
tu peut mettre un fichier exemple ?
il faut voir si tes feuilles se suivent?
les codes établissement aussi
tu peut mettre un fichier exemple ?
il faut voir si tes feuilles se suivent?
les codes établissement aussi
les feuilles se suivent comme dans ma macro, en commençant par données, ensuite gl_accounts_new, et ainsi de suite.
les codes sont 01, 04, 05, 06, 07, 08, 09, 11, 12, 13, 17, 19, 21, 23, 24, 25.
les codes sont 01, 04, 05, 06, 07, 08, 09, 11, 12, 13, 17, 19, 21, 23, 24, 25.
code à tester
Sub création_article()
'
' création_article Macro
' permet de créer les fichiers csv pour la création d'articles renaissance
'
Dim CodeEta As Variant
Dim Onglet As String
CodeEta = Array("01", "04", "05", "06", "07", "08", "09", "11", "12", "13", "17", "19", "21", "23", "24", "25")
Sheets("données").Select
Range("C9").Select
For i = 0 To 16
ActiveCell.FormulaR1C1 = "'" & CodeEta(i)
ChDir "C:\Users\heri101440\Documents\star\import_rencs\" & CodeEta(i)
For j = 2 To 13
Sheets(j).Select
Onglet = ActiveWorkbook.ActiveSheet.Name & ".csv"
ActiveWorkbook.SaveAs Filename:=Onglet, FileFormat:=xlCSV, CreateBackup:=False, local:=True
Next j
Next i
End Sub