Bonsoir le forum
j'utilise une série de fichiers que je concatène en un seul
je recherche la première ligne vide du premier
sur le 2eme je recherche la plage de cellules non vides
je la copie et la colle sur le premier
je passe au suivant je sélectionne et copie la plage trouvée
je reviens au premier, première ligne vide , je colle
puis je passe au 3eme etc
tout fonctionne bien sauf si un des fichier est vide (exemple fichier classC vide)
la sélection prend tout, 65000 lignes, et bien sur la macro plante
comment ignorer une opération si un fichier est vide ?
merci d'avance
voici le code que j'utilise:
et ainsi de suite
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 ' Classeur classA selectionne premiere cellule vide : Windows("classA.xls").Activate Dim MaLigne1 As Variant MaLigne1 = Range("A2").End(xlDown).Address MaLigne1 = Range(MaLigne1).Row MaLigne1 = MaLigne1 + 1 Range("A" + CStr(MaLigne1)).Select ' Classeur classB selectionne zone à copier et colle : Windows("classB.xls").Activate Dim MaLigne2 As Variant MaLigne2 = Range("A2").End(xlDown).Address MaLigne2 = Range(MaLigne2).Row Range("A2:X" + CStr(MaLigne2)).Select Application.CutCopyMode = False Selection.Copy Windows("classA.xls").Activate ActiveSheet.Paste ' Classeur classC selectionne zone à copier et colle : Windows("classC.xls").Activate Dim MaLigne3 As Variant MaLigne3 = Range("A2").End(xlDown).Address MaLigne3 = Range(MaLigne3).Row Range("A2:X" + CStr(MaLigne3)).Select Application.CutCopyMode = False Selection.Copy ' recherche 1ere cellule vide et colle : Windows("classA.xls").Activate Dim MaLigne4 As Variant MaLigne4 = Range("A2").End(xlDown).Address MaLigne4 = Range(MaLigne4).Row MaLigne4 = MaLigne4 + 1 Range("A" + CStr(MaLigne4)).Select ActiveSheet.Paste
Partager