Alimenter un fichier de suivi Excel
Résolu
edlyg
Messages postés
13
Statut
Membre
-
edlyg Messages postés 13 Statut Membre -
edlyg Messages postés 13 Statut Membre -
Bonsoir
Je cherche à faire la chose suivante :
dans un classeur excel je crée des devis que je sauvegarde via des macros en excel d'une part, exemplaire entreprise, et en pdf, exemplaire client.
J'aimerais que certaines des données de l'exemplaire entreprise viennent alimenter un fichier qui répertorierait les données principales concernant le client et qu'à chaque devis créé corresponde une ligne.
J'espère que ma requête est claire
Merci d'avance pour votre aide
Je cherche à faire la chose suivante :
dans un classeur excel je crée des devis que je sauvegarde via des macros en excel d'une part, exemplaire entreprise, et en pdf, exemplaire client.
J'aimerais que certaines des données de l'exemplaire entreprise viennent alimenter un fichier qui répertorierait les données principales concernant le client et qu'à chaque devis créé corresponde une ligne.
J'espère que ma requête est claire
Merci d'avance pour votre aide
2 réponses
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour, ce que tu souhaites réaliser est clair.
cependant, tu n'expliques pas ce que tu attends comme assistance. -
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
voici un exemple de code VBA:Sub edlyg() Dim wb As Workbook Dim ws As Worksheet Dim filename As String Dim nlig As Long filename = Environ("temp") & "/ccm/testedlyg.xlsx" Set wb = Workbooks.Open(filename) Set ws = wb.Worksheets(1) nlig = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row + 1 ws.Cells(nlig, 1) = Now() ws.Cells(nlig, 2) = "bonjour" wb.Save wb.Close End Sub
il ouvre un fichier (dont le nom est dans filename, en ligne 7), ajoute une ligne à la première feuille du fichier (avec la date et "bonjour", en lignes 11 et 12), puis sauve et ferme le fichier.-
-
voici l'exemple adapté:
Sub edlyg() Dim wb As Workbook Dim ws As Worksheet Dim filename As String Dim nlig As Long Dim source As Worksheet Set source = ThisWorkbook.ActiveSheet filename = Environ("temp") & "/ccm/testedlyg.xlsx" Set wb = Workbooks.Open(filename) Set ws = wb.Worksheets(1) nlig = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row + 1 'C3, C4, C7, C12 et C14 ws.Cells(nlig, 1) = Now() ws.Cells(nlig, 2) = source.[C3] ws.Cells(nlig, 3) = source.[C4] ws.Cells(nlig, 4) = source.[C7] ws.Cells(nlig, 5) = source.[C12] ws.Cells(nlig, 6) = source.[C14] wb.Save wb.Close End Sub
le nom complet du fichier doit être dans la ligne 9, la ligne 10 ne doit pas changer.
autre exemple de ligne 9:filename="C:\data\temp/ccm/testedlyg.xlsx"
les lignes 15 à 19 copient les données à partir de la feuille active dans le fichier principal. tu peux changer la ligne 8 si tu veux prendre des données dans une autre feuille. -
Je viens d'essayer et ai la ligne 10 surlignée en jaune
Sub edlyg()
Dim wb As Workbook
Dim ws As Worksheet
Dim filename As String
Dim nlig As Long
Dim source As Worksheet
Set source = ThisWorkbook.ActiveSheet
filename = Environ("temp") & "/ccm/testedlyg.xlsx"
Set wb = Workbooks.Open(filename)
Set ws = wb.Worksheets(1)
nlig = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row + 1
'C3, C4, C7, C12 et C14
ws.Cells(nlig, 1) = Now()
ws.Cells(nlig, 2) = source.[C3]
ws.Cells(nlig, 3) = source.[C4]
ws.Cells(nlig, 4) = source.[C7]
ws.Cells(nlig, 5) = source.[C12]
ws.Cells(nlig, 6) = source.[C14]
wb.Save
wb.Close
End Sub
que j'ai mis en gras dans ma copie -
-
-