Macro VBA: Découper en plusieurs fichiers

Bonjour,

Je souhaite créer une macro qui va découper un fichier en plusieurs fichiers sur la base de la valeur dans une colonne (périmètre, destinataire, ..).

Il faudrait une feuille de paramétrage permettant d'indiquer la colonne à découper, le nom du fichier, etc.

Les fichiers découpés doivent être enregistrés sous le nom du fichier initial, type "Test_1".

En partant d'un tableau de ce type :

Colonne 1 Colonne 2

A 1

B 2

A 3

B 4

Je souhaiterais obtenir 2 différents fichiers avec 2 tableaux de ce type

1/

Colonne 1 Colonne 2

A 1

A 3

2/

Colonne 1 Colonne 2

B 2

B 4

Est ce que quelqu'un pourrait m'aider s'il vous plait?!!!! ^_^

(Je suis clairement désespérée)

Merci,

Excellent sujet !

J'ai fait de l'archéologie documentaire et ai retrouvé ce que j'avais fait en début d'année.

Il faut que je le simplifie et je te poste une réponse possible demain matin. Cela me servira du coup comme outil car j'en aurai d'autres utilisations.

Sauf si bien sûr quelqu'un a aussi une autre réponse possible.

Steelson a écrit :

Excellent sujet !

J'ai fait de l'archéologie documentaire et ai retrouvé ce que j'avais fait en début d'année.

Il faut que je le simplifie et je te poste une réponse possible demain matin. Cela me servira du coup comme outil car j'en aurai d'autres utilisations.

Sauf si bien sûr quelqu'un a aussi une autre réponse possible.

Steelson, tu me sauves!! Vivement demain matin!! Merci

Voici ... à adapter à ton cas !

Nota : mérite encore d'être optimisé.

1'678fragmenter.xlsm (18.99 Ko)

Petite amélioration (la nuit porte conseil) : la colonne est en paramètre et le programme détermine le nombre de colonnes.

On peut encore et toujours optimiser ...

C'est top!!Merci bcp pour ton aide! Elle fonctionne niquel

J'ai dû faire disparaître le fichier attaché

1'304fragmenter.xlsm (20.42 Ko)

Bonsoir Steelson

Votre solution est vraiment super.

Au cas où vous aurez une solution pour moi ,

j'aimerais qu'après le découpage, les cellules soient en format texte.

merci

Bonjour,

essaie en modifiant une partie du code comme suit :

        If ligneDe < derligne + 1 Then
            ' report des valeurs
                For col = 1 To nbcol
                    ws.Cells(ligneVers, col).Value = "'" & Principal.Sheets("data").Cells(ligneDe, col).Value
                Next col
            ligneVers = ligneVers + 1
        End If
Rechercher des sujets similaires à "macro vba decouper fichiers"