XL 2016 Copier coller VBA

FeeZ

XLDnaute Nouveau
Bonjour à tous,

Je suis totalement novice en VBA et j'ai besoin de créer une macro pour un tableau.
Celui ci fonctionne sur base de copier coller mais je n'arrive pas à faire descendre mes données au fur et à mesure en automatisant.
Voici ce que j'ai essayé de faire en m'inspirant d'un forum (je sais c'est pas fou)
Si quelqu'un avait l'amabilité de m'aider ce serait sympa ... :)
Merci


VB:
 Range("D15").Select
    Application.CutCopyMode = False
    Selection.Copy
    Windows("Projet.xlsm").Activate
    'Range("L26").Select
       Dim li As Integer 'déclare la variable li
    Sheets("FRONT").Select
    'sélectionne l'onglet 'Feuil1'

li = Range("L65536").End(xlUp).Row + 1 'définit la variable li
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False

Si quelqu'un avait l'amabilité de m'aider ce serait sympa ... :)
Merci
 
Solution
Bonjour FeeZ, le forum

En fait les sélections et activations sont inutiles et, dans votre code, vous collez sur la sélection active de la feuille FRONT et non sur la première cellule vide en fin de colonne L.
Pour copier des valeurs, il suffit de les adresser directement dans la première cellule vide en fin de la colonne concernée.
VB:
Workbooks("Projet.xlsm").Sheets("FRONT").Range("L65536").End(xlUp).Offset(1, 0).Value = Range("D15").Value
Ce code peut se traduire par la valeur de la première cellule vide après les données en colonne F de la feuille FRONT du classeur Projet.Xlsm = la valeur de la cellule D15 de la feuille active

Bien cordialement, @+
Bonjour FeeZ, le forum

En fait les sélections et activations sont inutiles et, dans votre code, vous collez sur la sélection active de la feuille FRONT et non sur la première cellule vide en fin de colonne L.
Pour copier des valeurs, il suffit de les adresser directement dans la première cellule vide en fin de la colonne concernée.
VB:
Workbooks("Projet.xlsm").Sheets("FRONT").Range("L65536").End(xlUp).Offset(1, 0).Value = Range("D15").Value
Ce code peut se traduire par la valeur de la première cellule vide après les données en colonne F de la feuille FRONT du classeur Projet.Xlsm = la valeur de la cellule D15 de la feuille active

Bien cordialement, @+
 
Dernière édition:

FeeZ

XLDnaute Nouveau
Bonjour FeeZ, le forum

En fait les sélections et activations sont inutiles et, dans votre code, vous collez sur la sélection active de la feuille FRONT et non sur la première cellule vide en fin de colonne L.
Pour copier des valeurs, il suffit de les adresser directement dans la première cellule vide en fin de la colonne concernée.
VB:
Workbooks("Projet.xlsm").Sheets("FRONT").Range("L65536").End(xlUp).Offset(1, 0).Value = Range("D15").Value
Ce code peut se traduire par la valeur de la première cellule vide après les données en colonne F de la feuille FRONT du classeur Projet.Xlsm = la valeur de la cellule D15 de la feuille active

Bien cordialement, @+
Merci beaucoup pour ta réponse je vais essayer comme ça !