Fusion fichier Excel

Bonjour tout le monde,

je début en VBA et j'ai vraiment besoin de votre aide pour fusionner 25 fichiers Excel avec le même nombre de colonne et même format. le nombre de lignes par contre peut être différent.

ils sont tous sur des emplacements différents j'aimerais pouvoir créer un fichier qui me les regroupera tous.

NB: le copier coller des données doit commencer toujours à partir de la ligne 7 car il faut pas prendre les en têtes ( en tête déjà mis sur le fichier de destination)

l'idée c'est de mettre les fichiers sur une seule feuille

j'espère que j'étais claire.

MERCI

je vous joints un exemple de deux fichiers que je souhaite regrouper

Merci énormément.

Cordialement

Bonjour Lana, bonjour le forum,

Le problème dans ton cas est que les fichiers ne se trouvent pas au même endroit. Ce n'est pas l'idéal car ça va nécessiter l'intervention de l'utilisateur au cours de la macro. En effet, on pourrait envisager une boucle (de 25 fois) qui commencerait par la boîte de dialogue d'ouverture de fichier source, l'utilisateur choisi, traitement des données, fermeture du fichier source, fichier suivant, etc. Le code se trouverait dans le fichier destination.

À moins que tu puisses fournir le chemin d'accès et le nom de chaque fichier (de la liste des 25)... Dans ce cas on peut coder une macro qui s'exécute automatiquement.

Les données à traiter se trouvent-elles dans un seul onglet du fichier source ? Si oui lequel ?

Ou faut-il traiter plusieurs onglets de chaque fichier source ? Tous ? sinon, Lesquels ?

Nous attendons tes réponses.

bonjour,

merci pour ta réponse

en fait je connais le nom des fichiers et leur emplacement c'est pour ca faire une macro automatique me semble possible

Merci


on peut dans ce cas prendre les noms des fichiers Fichier numéro 1 et Fichier numéro 2 pour l'emplacement on met bureau à titre d'exemple après je changerai en mettant le bon emplacement.

Les données à traiter se trouvent toujours dans le meme onglet de chaque fichier ici c'est feuille 1

Re,

Essaie ce code à placer dans le classeur destination. Il ne te reste qu'à adapter chemins d'accès et noms des fichiers...

le code :

Sub Macro1()
Dim CD As Workbook 'déclare la variable CD (Classeur Destination)
Dim OD As Worksheet 'déclare la variable OD (Onglet Destination)
Dim CS As Workbook 'déclare la variable CS (Classeur Source)
Dim OS As Worksheet 'déclare la variable OS (Onfglet Source)
Dim TCS(1 To 25, 1 To 2) As String 'déclare la variable TCS (Tableau des Classeurs Source)
Dim I As Byte 'déclare la variable I (Incrément)
Dim DEST As Range 'déclare la variable DEST (Cellule de DESTination)
Dim DL As Long 'déclare la variable DL (Dernière Ligne)

Application.ScreenUpdating = False 'masque les rafraîchissements d'écran
Set CD = ThisWorkbook 'définit le classeur destination CD
Set OD = CD.Sheets("Feuil1") 'définit l'onget destination OD (à adapter éventuellement)
TCS(1, 1) = "chemin d'accès complet du classeur 1" & "\" 'tu adapteras le chemin à ton cas
TCS(1, 2) = "nom du classeur 1.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(2, 1) = "chemin d'accès complet du classeur 2" & "\" 'tu adapteras le chemin à ton cas
TCS(2, 2) = "nom du classeur 2.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(3, 1) = "chemin d'accès complet du classeur 3" & "\" 'tu adapteras le chemin à ton cas
TCS(3, 2) = "nom du classeur 3.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(4, 1) = "chemin d'accès complet du classeur 4" & "\" 'tu adapteras le chemin à ton cas
TCS(4, 2) = "nom du classeur 4.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(5, 1) = "chemin d'accès complet du classeur 5" & "\" 'tu adapteras le chemin à ton cas
TCS(5, 2) = "nom du classeur 5.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(6, 1) = "chemin d'accès complet du classeur 6" & "\" 'tu adapteras le chemin à ton cas
TCS(6, 2) = "nom du classeur 6.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(7, 1) = "chemin d'accès complet du classeur 7" & "\" 'tu adapteras le chemin à ton cas
TCS(7, 2) = "nom du classeur 7.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(8, 1) = "chemin d'accès complet du classeur 8" & "\" 'tu adapteras le chemin à ton cas
TCS(8, 2) = "nom du classeur 8.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(9, 1) = "chemin d'accès complet du classeur 9" & "\" 'tu adapteras le chemin à ton cas
TCS(9, 2) = "nom du classeur 9.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(10, 1) = "chemin d'accès complet du classeur 10" & "\" 'tu adapteras le chemin à ton cas
TCS(10, 2) = "nom du classeur 10.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(11, 1) = "chemin d'accès complet du classeur 11" & "\" 'tu adapteras le chemin à ton cas
TCS(11, 2) = "nom du classeur 11.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(12, 1) = "chemin d'accès complet du classeur 12" & "\" 'tu adapteras le chemin à ton cas
TCS(12, 2) = "nom du classeur 12.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(13, 1) = "chemin d'accès complet du classeur 13" & "\" 'tu adapteras le chemin à ton cas
TCS(13, 2) = "nom du classeur 13.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(14, 1) = "chemin d'accès complet du classeur 14" & "\" 'tu adapteras le chemin à ton cas
TCS(14, 2) = "nom du classeur 14.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(15, 1) = "chemin d'accès complet du classeur 15" & "\" 'tu adapteras le chemin à ton cas
TCS(15, 2) = "nom du classeur 15.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(16, 1) = "chemin d'accès complet du classeur 16" & "\" 'tu adapteras le chemin à ton cas
TCS(16, 2) = "nom du classeur 16.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(17, 1) = "chemin d'accès complet du classeur 17" & "\" 'tu adapteras le chemin à ton cas
TCS(17, 2) = "nom du classeur 17.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(18, 1) = "chemin d'accès complet du classeur 18" & "\" 'tu adapteras le chemin à ton cas
TCS(18, 2) = "nom du classeur 18.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(19, 1) = "chemin d'accès complet du classeur 19" & "\" 'tu adapteras le chemin à ton cas
TCS(19, 2) = "nom du classeur 19.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(20, 1) = "chemin d'accès complet du classeur 20" & "\" 'tu adapteras le chemin à ton cas
TCS(20, 2) = "nom du classeur 20.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(21, 1) = "chemin d'accès complet du classeur 21" & "\" 'tu adapteras le chemin à ton cas
TCS(21, 2) = "nom du classeur 21.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(22, 1) = "chemin d'accès complet du classeur 22" & "\" 'tu adapteras le chemin à ton cas
TCS(22, 2) = "nom du classeur 22.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(23, 1) = "chemin d'accès complet du classeur 23" & "\" 'tu adapteras le chemin à ton cas
TCS(23, 2) = "nom du classeur 23.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(24, 1) = "chemin d'accès complet du classeur 24" & "\" 'tu adapteras le chemin à ton cas
TCS(24, 2) = "nom du classeur 24.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(25, 1) = "chemin d'accès complet du classeur 25" & "\" 'tu adapteras le chemin à ton cas
TCS(25, 2) = "nom du classeur 25.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
For I = 1 To 25 'boucle sur les 25 classeurs
    On Error Resume Next 'gestion des erreurs (en cas d'erreur passe à la ligne suivante)
    Set CS = workboos(TCS(I, 2)) 'définit le classeur source CS (génère une erreur si ce classeur n'est pas ouvert)
    If Err <> 0 Then 'condition : si une erreur a été générée
        Err.Clear 'supprime l'erreur
        Workbooks.Add TCS(I, 1) & TCS(I, 2) 'ouvre le classeur de la boucle
        Set CS = ActiveWorkbook 'définit le classeur source CS
    End If 'fin de la condition
    On Error GoTo 0 'annule la gestion des erreurs
    Set OS = CS.Worksheets("Feuil1") 'définit l'onglet source (à adapter éventuellement)
    Set DEST = OD.Cells(Application.Rows.Count, 1).End(xlUp).Offset(1, 0) 'définit la cellule de destination DEST de l'ongle OD
    DL = OS.Cells(Application.Rows.Count, "A").End(xlUp).Row 'définit la dernière ligne éditée DL de la colonne A de l'onglet source OS
    OS.Range(OS.Rows(7), OS.Rows(DL)).Copy DEST 'copie les lignes 7 à DL de l'onglet source OS et les colle dans la cellule de destination DEST de l'onglet destination OD
    CS.Close SaveChanges:=False 'ferme le classeur source de la boucle sans enregistrer les modifications
Next I 'prochain classeur de la boucle
Application.ScreenUpdating = True 'affiche les rafraîchissements d'écran
MsgBox "Fin de traitement des données !" 'message
End Sub

Bonjour,

Merci énormément pour votre réactivité.

ci joint le fichier de destination pourriez vous s'il vous plait adapter le code à ce fichier car j'arrive pas à comprendre tout de suite

Merci encore une fois.

Re,

Le code s'adaptait automatiquement... Mais pour te faciliter la tâche j'ai rajouté un bouton Récup.

Il te faut d'abord, dans le code qui se trouve dans le [Module1], commencer par remplacer les chemins et les noms factices par leur vrai valeur. Si tu ne sait pas, il faut que tu me donnes les chemins d'accès complet et le nom (avec extension) de chaque fichier source pour je puisse modifier le code.

Une fois cette modification faite, clique sur le bouton Récup et , si je ne me suis pas planté quelque part (ce qui est très rare), les données sont récupérées...

Ton fichier modifié. Attention ! Comme il y a désormais du code il a pris l'extension .xlsm... :

Bonjour,

En effet ça marche j'ai pas encore testé la deuxième proposition je suis en train de changer les noms et les chemins des fichiers je te tiens au courant

en tout cas ça m'aide beaucoup je te remercie énormément.

s'il vous plait comment je fais comment si j'ai un fichier source manquant pour que la macro passe directement au suivant ???

Re,

Je n'ai modifié que la gestion des erreurs et je te propose la fin du code à partir de la boucle For I... que tu remplaceras dans l'ancien code :

For I = 1 To 25 'boucle sur les 25 classeurs
    On Error Resume Next 'gestion des erreurs (en cas d'erreur passe à la ligne suivante)
    Set CS = Workbooks(TCS(I, 2)) 'définit le classeur source CS (génère l'erreur 9 si ce classeur n'est pas ouvert)
    If Err.Number = 9 Then Err.Clear 'supprime l'erreur 9 si classeur n'est pas ouvert
    Workbooks.Add TCS(I, 1) & TCS(I, 2) 'ouvre le classeur de la boucle (génère l'erreur 1004 si le classeur est manquant)
    If Err.Number = 1004 Then 'condition : si l'erreur 1004 a été générée
        Err.Clear 'supprime l'erreur
        On Error GoTo 0 'annule la gestion des erreurs
        GoTo suite 'va à l'étiquette "suite"
    End If 'fin de la condition
    Set CS = ActiveWorkbook 'définit le classeur source CS
    On Error GoTo 0 'annule la gestion des erreurs
    Set OS = CS.Worksheets("Feuil1") 'définit l'onglet source (à adapter éventuellement)
    Set DEST = OD.Cells(Application.Rows.Count, 1).End(xlUp).Offset(1, 0) 'définit la cellule de destination DEST de l'ongle OD
    DL = OS.Cells(Application.Rows.Count, "A").End(xlUp).Row 'définit la dernière ligne éditée DL de la colonne A de l'onglet source OS
    OS.Range(OS.Rows(7), OS.Rows(DL)).Copy DEST 'copie les lignes 7 à DL de l'onglet source OS et les colle dans la cellule de destination DEST de l'onglet destination OD
    CS.Close SaveChanges:=False 'ferme le classeur source de la boucle sans enregistrer les modifications
suite: 'étiquette
Next I 'prochain classeur de la boucle
Application.ScreenUpdating = True 'affiche les rafraîchissements d'écran
MsgBox "Fin de traitement des données !" 'message
End Sub

Merci Beaucoup!!!!!

Bonjour,

Je tente ma chance en faisant une autre publication sur ce sujet!!

pour la dernière macro j'aimerais ajouter quelques détails :

vérifier que sur les fichiers sources qu'il y a pas de filtres :je souhaite sauvegarder toutes les lignes de mes documents

à la fin de la récupération des données je souhaite faire un copier coller valeur de toute la base dans mon fichier destination.

Merci par avance pour votre aide

Cordialement

Bonjour Lana, bonjour le forum,

J'ai rajouté trois lignes au code :

If OS.FilterMode = True Then OS.AutoFilterMode = False 'si l'onglet est filtré, supprime le filtre

et

OD.Range("A1").CurrentRegion.Copy 'copie les données de l'onglet OD
OD.Range("A1").PasteSpecial (xlPasteValues) 'colle les valeurs copiées dans la cellule A1 de l'onglet OD

Et voici le code entier pour que tu puisses voir où j'ai mis ces trois lignes :

Sub Macro1()
Dim CD As Workbook 'déclare la variable CD (Classeur Destination)
Dim OD As Worksheet 'déclare la variable OD (Onglet Destination)
Dim CS As Workbook 'déclare la variable CS (Classeur Source)
Dim OS As Worksheet 'déclare la variable OS (Onfglet Source)
Dim TCS(1 To 25, 1 To 2) As String 'déclare la variable TCS (Tableau des Classeurs Source)
Dim I As Byte 'déclare la variable I (Incrément)
Dim DEST As Range 'déclare la variable DEST (Cellule de DESTination)
Dim DL As Long 'déclare la variable DL (Dernière Ligne)

Application.ScreenUpdating = False 'masque les rafraîchissements d'écran
Set CD = ThisWorkbook 'définit le classeur destination CD
Set OD = CD.Sheets("Feuil1") 'définit l'onget destination OD (à adapter éventuellement)
TCS(1, 1) = "chemin d'accès complet du classeur 1" & "\" 'tu adapteras le chemin à ton cas
TCS(1, 2) = "nom du classeur 1.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(2, 1) = "chemin d'accès complet du classeur 2" & "\" 'tu adapteras le chemin à ton cas
TCS(2, 2) = "nom du classeur 2.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(3, 1) = "chemin d'accès complet du classeur 3" & "\" 'tu adapteras le chemin à ton cas
TCS(3, 2) = "nom du classeur 3.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(4, 1) = "chemin d'accès complet du classeur 4" & "\" 'tu adapteras le chemin à ton cas
TCS(4, 2) = "nom du classeur 4.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(5, 1) = "chemin d'accès complet du classeur 5" & "\" 'tu adapteras le chemin à ton cas
TCS(5, 2) = "nom du classeur 5.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(6, 1) = "chemin d'accès complet du classeur 6" & "\" 'tu adapteras le chemin à ton cas
TCS(6, 2) = "nom du classeur 6.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(7, 1) = "chemin d'accès complet du classeur 7" & "\" 'tu adapteras le chemin à ton cas
TCS(7, 2) = "nom du classeur 7.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(8, 1) = "chemin d'accès complet du classeur 8" & "\" 'tu adapteras le chemin à ton cas
TCS(8, 2) = "nom du classeur 8.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(9, 1) = "chemin d'accès complet du classeur 9" & "\" 'tu adapteras le chemin à ton cas
TCS(9, 2) = "nom du classeur 9.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(10, 1) = "chemin d'accès complet du classeur 10" & "\" 'tu adapteras le chemin à ton cas
TCS(10, 2) = "nom du classeur 10.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(11, 1) = "chemin d'accès complet du classeur 11" & "\" 'tu adapteras le chemin à ton cas
TCS(11, 2) = "nom du classeur 11.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(12, 1) = "chemin d'accès complet du classeur 12" & "\" 'tu adapteras le chemin à ton cas
TCS(12, 2) = "nom du classeur 12.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(13, 1) = "chemin d'accès complet du classeur 13" & "\" 'tu adapteras le chemin à ton cas
TCS(13, 2) = "nom du classeur 13.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(14, 1) = "chemin d'accès complet du classeur 14" & "\" 'tu adapteras le chemin à ton cas
TCS(14, 2) = "nom du classeur 14.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(15, 1) = "chemin d'accès complet du classeur 15" & "\" 'tu adapteras le chemin à ton cas
TCS(15, 2) = "nom du classeur 15.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(16, 1) = "chemin d'accès complet du classeur 16" & "\" 'tu adapteras le chemin à ton cas
TCS(16, 2) = "nom du classeur 16.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(17, 1) = "chemin d'accès complet du classeur 17" & "\" 'tu adapteras le chemin à ton cas
TCS(17, 2) = "nom du classeur 17.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(18, 1) = "chemin d'accès complet du classeur 18" & "\" 'tu adapteras le chemin à ton cas
TCS(18, 2) = "nom du classeur 18.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(19, 1) = "chemin d'accès complet du classeur 19" & "\" 'tu adapteras le chemin à ton cas
TCS(19, 2) = "nom du classeur 19.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(20, 1) = "chemin d'accès complet du classeur 20" & "\" 'tu adapteras le chemin à ton cas
TCS(20, 2) = "nom du classeur 20.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(21, 1) = "chemin d'accès complet du classeur 21" & "\" 'tu adapteras le chemin à ton cas
TCS(21, 2) = "nom du classeur 21.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(22, 1) = "chemin d'accès complet du classeur 22" & "\" 'tu adapteras le chemin à ton cas
TCS(22, 2) = "nom du classeur 22.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(23, 1) = "chemin d'accès complet du classeur 23" & "\" 'tu adapteras le chemin à ton cas
TCS(23, 2) = "nom du classeur 23.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(24, 1) = "chemin d'accès complet du classeur 24" & "\" 'tu adapteras le chemin à ton cas
TCS(24, 2) = "nom du classeur 24.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
TCS(25, 1) = "chemin d'accès complet du classeur 25" & "\" 'tu adapteras le chemin à ton cas
TCS(25, 2) = "nom du classeur 25.xlsx" 'tu adapteras le nom (et éventuellement l'extension) à ton cas
For I = 1 To 25 'boucle sur les 25 classeurs
    On Error Resume Next 'gestion des erreurs (en cas d'erreur passe à la ligne suivante)
    Set CS = Workbooks(TCS(I, 2)) 'définit le classeur source CS (génère l'erreur 9 si ce classeur n'est pas ouvert)
    If Err.Number = 9 Then Err.Clear 'supprime l'erreur 9 si classeur n'est pas ouvert
    Workbooks.Add TCS(I, 1) & TCS(I, 2) 'ouvre le classeur de la boucle (génère l'erreur 1004 si le classeur est manquant)
    If Err.Number = 1004 Then 'condition : si l'erreur 1004 a été générée
        Err.Clear 'supprime l'erreur
        On Error GoTo 0 'annule la gestion des erreurs
        GoTo suite 'va à l'étiquette "suite"
    End If 'fin de la condition
    Set CS = ActiveWorkbook 'définit le classeur source CS
    On Error GoTo 0 'annule la gestion des erreurs
    Set OS = CS.Worksheets("Feuil1") 'définit l'onglet source (à adapter éventuellement)
    If OS.FilterMode = True Then OS.AutoFilterMode = False 'si l'onglet est filtré, supprime le filtre
    Set DEST = OD.Cells(Application.Rows.Count, 1).End(xlUp).Offset(1, 0) 'définit la cellule de destination DEST de l'ongle OD
    DL = OS.Cells(Application.Rows.Count, "A").End(xlUp).Row 'définit la dernière ligne éditée DL de la colonne A de l'onglet source OS
    OS.Range(OS.Rows(7), OS.Rows(DL)).Copy DEST 'copie les lignes 7 à DL de l'onglet source OS et les colle dans la cellule de destination DEST de l'onglet destination OD
    CS.Close SaveChanges:=False 'ferme le classeur source de la boucle sans enregistrer les modifications
suite: 'étiquette
Next I 'prochain classeur de la boucle
OD.Range("A1").CurrentRegion.Copy 'copie les données de l'onglet OD
OD.Range("A1").PasteSpecial (xlPasteValues) 'colle les valeurs copiées dans la cellule A1 de l'onglet OD
Application.ScreenUpdating = True 'affiche les rafraîchissements d'écran
MsgBox "Fin de traitement des données !" 'message
End Sub

Bonjour,

Merci beaucoup c'était efficace et rapide , je me rends compte que certaines cellules bien qu'elles sont vides ma fonction NBVAL les considèrent comme non vides.

La solution c'est pour mes colonnes P S U dans le fichier destination d'effacer toutes les cellules qui sont vides comme ca ma fonction NBVAL marchera

Pourriez vous m'aider à coder cette partie ??

FOR EACH EMPTY CELL IN COLONN P. S. U DELETE???

Merci encore une fois j'espère que c'est le dernier souci que j'aurai avec ces fichiers

Merci!!

Re,

Le problème c'est que si NBVAL ne les considère pas comme vides, c'est qu'elle ne sont pas vides (un espace ou un caractère invisible ?). Donc je vois mal comment on va pouvoir coder sans savoir ce qu'elles contiennes réellement...

Où utilises-tu NBVAL ?

Pourrais-tu m'envoyer un exemple avec ce problème.

Voila ici un exemple de ce que j'ai le NBVAL sera utiliser sur une autre feuille et serai fait après (pas besoin de l'integrer à la macro) j'arrive pas à comprendre qu'est ce qu'il y dans mes cellules

Tu comprendras mieux on ouvrant le fichier joint

Merci

Re,

Oui j'ai déjà vu passer des fils avec ce genre de problème mais, je suis désolé, je ne me suis pas attardé et je n'ai pas la solution...

Merci beaucoup pour ton aide

Rechercher des sujets similaires à "fusion fichier"