Bonjour,
Je galère un peu.
j'ai trouvé beaucoup d'info pour l'instant, mais maintenant je sèche.
Ce que je veux faire
1 ouvrir le fichier
2 copier le contenu dans le fichier principale
3 sauvegarder le fichier source dans un autre dossier
4 supprimer le fichier source.
et ce jusqu'à ce qu'il n'y ait plus de fichier.
donc voici mon code.
il plante lorsque le dossier est vide
	
	
	
	
	
		
	
		
			
		
		
	
				
			Je galère un peu.
j'ai trouvé beaucoup d'info pour l'instant, mais maintenant je sèche.
Ce que je veux faire
1 ouvrir le fichier
2 copier le contenu dans le fichier principale
3 sauvegarder le fichier source dans un autre dossier
4 supprimer le fichier source.
et ce jusqu'à ce qu'il n'y ait plus de fichier.
donc voici mon code.
il plante lorsque le dossier est vide
		Code:
	
	
	Sub pros()
'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
                            'SUIVI PROS
                            
'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
'déclaration des variables  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  
    'lien "modulation pros"
        bddpros = "chemin\"
    Dim Ligne As Integer
    'Définition de la variable, ici, dernière ligne de la colonne A
    Ligne = Range("B65536").End(xlUp).Row
'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 
'XXXXXXXXXXXXXXXXXXXX M XXXXXXXXXXXXXX
'ouverture du fichier si existant
If Dir("chemin\fichier*.csv") <> "" Then
      nomFic = "chemin\fichier*.csv"
         If nomFic <> False Then
         
Dim Fich As String
    Fich = Dir("chemin\fichier*.csv")
    Do While nomFic <> ""
        Workbooks.OpenText Filename:="chemin\fichier*.csv", DataType:=1, Semicolon:=True, local:=True
      Fich = Dir
'récupérer la date du fichier
    txt = Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 5)
    période = Right(txt, Len(txt) - 22)
    save = bdd & période
    nomFic = save & ".xls"
    ficor = ActiveWorkbook.Name
    Ligne = Range("B65536").End(xlUp).Row
    
'ajout d'une colonne
    Columns("A:A").Select
    Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
'nommer colonne A
    Range("A1").Select
    ActiveCell.FormulaR1C1 = "période"
'nommer les lignes de la colonne A jusqu'à la dernière ligne
    Range("A2:A" & Ligne).Value = DateSerial(Left$(période, 4), Right$(période, 2), 1)
'mise en forme de la colonne A
    Range("A2:A" & Ligne).NumberFormat = "[$-40C]mmmm-yyyy;@"
'renommer la feuille
    ActiveSheet.Name = période
'enregistrer sous
Application.DisplayAlerts = False
        ActiveWorkbook.SaveAs Filename:=bddpros & save, FileFormat:=xlExcel8, _
        Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
        CreateBackup:=False
        Application.DisplayAlerts = True
        
'copier/coller dans tableau de bord
    Sheets(période).Select
    Range("A2:Z2063").Select
    Application.CutCopyMode = False
    Selection.Copy
    Windows("tableau de bord.xls").Activate
    Sheets("BDDPROS").Select
    Range("A65536").End(xlUp).Offset(1, 0).Select
    ActiveSheet.Paste
        
 'fermeture du fichier d'origine
        Application.DisplayAlerts = False
        Windows(nomFic).Close
        Application.DisplayAlerts = True
        
'suppression des fichiers si existant
        If Dir("chemin\fichier*" & période & "*") <> "" Then
    nomFic = "chemin\fichier*" & période & "*"
         If nomFic <> False Then
       
Dim Fic As String
    Fic = Dir("chemin\fichier*" & période & "*")
    Do While Fic <> ""
        Kill "chemin\fichier*" & période & "*"
        Fic = Dir
    Loop
    End If
    End If
     Loop
    End If
  
 End If
     End Sub
	
			
				Dernière édition: