Alimenter un fichier à partir d'un autre fichier

Bonjour,

j'ai une macro qui sélection certaines cellules d'un fichier source feuille " bon de commande" et crée un fichier de destination "statistiques client". cette macro crée un fichier qui est remplacé à chaque importation de données

Je voudrais qu'à chaque enregistrement, les données se rajoutent. J'ai modifié le début de la macro initiale mais j'ai systématiquement une erreur. (voir macros sur fichier joints : macro initiale et macro modifiée).

Quelqu'un peut m'aider ?

14macro-modifiee.docx (13.17 Ko)

Bonjour,

voici un exemple à adapter,

Sub exemple()
Dim wk1 As Workbook, wk2 As Workbook
Dim sh1 As Worksheet, sh2 As Worksheet
Dim rw1 As Long, rw2 As Long, n As Long

Set wk1 = ThisWorkbook
Set wk2 = Workbooks("statistiques clients.xls")

Set sh1 = wk1.Sheets(1)  'à adapter
Set sh2 = wk2.Sheets(2)  'à adapter

titre = Array("N_CLIENT", "DATE_CDE", "REF_ART", "QTE", "DESIGNATION", "PU_net")
sh2.Range("A1").Resize(, UBound(titre)) = Application.Transpose(titre)

rw1 = sh1.Cells(Rows.Count, "B").End(xlUp).Row
rw2 = sh2.Cells(Rows.Count, "C").End(xlUp).Row + 1

n = Application.Count(sh1.Range("B22:B" & rw1))

'copie ref
sh2.Range("C" & rw2 & ":C" & rw2 + n - 1) = sh1.Range("B22:B" & rw1).Value
End Sub

Bonjour,

J'ai adapté la macro mais je suis toujours en erreur sur la ligne : Set wk2 = Workbooks("statistiques clients.xls").

Est-ce que je l'ai mal adaptée ?

Sub enregistrer()

Dim wk1 As Workbook, wk2 As Workbook

Dim sh1 As Worksheet, sh2 As Worksheet

Dim rw1 As Long, rw2 As Long, n As Long

Set wk1 = ThisWorkbook

Set wk2 = Workbooks("statistiques clients.xls")

Set sh1 = wk1.Sheets("BON DE COMMANDE") 'à adapter

Set sh2 = wk2.Sheets("liste") 'à adapter

titre = Array("N_CLIENT", "DATE_CDE", "REF_ART", "QTE", "DESIGNATION", "PU_net")

sh2.Range("A1").Resize(, UBound(titre)) = Application.Transpose(titre)

rw1 = sh1.Cells(Rows.Count, "B").End(xlUp).Row

rw2 = sh2.Cells(Rows.Count, "C").End(xlUp).Row + 1

n = Application.Count(sh1.Range("B22:B" & rw1))

'copie ref

sh2.Range("C" & rw2 & ":C" & rw2 + n - 1) = sh1.Range("B22:B" & rw1).Value

End Sub

re,

peux-tu joindre ton fichier excel ?

Bonjour,

Mon fichier étant trop lourd, j'ai supprimé toutes les formules et les autres macros.

Merci par avance

re,

est ce que le fichier "statistiques client" est ouvert au moment ou tu exécutes la macro ?

Bonjour, oui, le fichier est ouvert.

Rechercher des sujets similaires à "alimenter fichier partir"