VBA Copier colonne d'un tableau structuré vers ligne d'un autre tab S

Bonjour,

je n'arrive pas à trouver une solution pour mon PB :

Je souhaite historiser les données de la colonne E conso (kWh), G Conso (kWh/Jtr) et P Coût (€) vers les 3 tableaux en dessous.

Je dois donc créer une nouvelle ligne dans chaque tableau et transférer les données vers les nouvelles lignes.

En ajoutant automatiquement la nouvelle année et faire la somme dans la colonne "total".

Cela doit ce faire en appuyant sur le bouton Historisation et en VBA.

Pour info, j'ai donné un extrait de mon fichier original qui est plus important.

Merci pour votre aide.

21pour-test.xlsm (34.28 Ko)

Bonjour,

Essaie :

Sub test()
  Dim Ligne As ListRow, ColE As ListColumn, I As Long
  Dim ColG As ListColumn, ColP As ListColumn
  Set ColE = ActiveSheet.ListObjects("DonnéesBP1").ListColumns(5)
  Set Ligne = ActiveSheet.ListObjects("MWhELECBP").ListRows.Add
  Ligne.Range(1) = [A5]
  For I = 1 To 12
    Ligne.Range(I + 1) = ColE.DataBodyRange(1)
  Next I
  Set ColG = ActiveSheet.ListObjects("DonnéesBP1").ListColumns(7)
  Set Ligne = ActiveSheet.ListObjects("RatioELECBP").ListRows.Add
  Ligne.Range(1) = [A5]
  For I = 1 To 12
    Ligne.Range(I + 1) = ColG.DataBodyRange(1)
  Next I
  Set ColP = ActiveSheet.ListObjects("DonnéesBP2").ListColumns(4)
  Set Ligne = ActiveSheet.ListObjects("CoutELECBP").ListRows.Add
  Ligne.Range(1) = [A5]
  For I = 1 To 12
    Ligne.Range(I + 1) = ColP.DataBodyRange(1)
  Next I
End Sub

Daniel

Hello,

merci de la réactivité.

Alors ça fonctionne sur le principe mais seules les valeurs de "Janvier" sont ajouté à la chaine, pas les autres mois .. :/

EDIT : J'ai remplacer le 1 dans le DataBodyRange par la lettre I. ça fonctionne parfaitement.

Je laisse le sujet ouvert et je le clôturaisdès que ça fonctionnera pour mon projet ;)

C'est l'âge snif

Rechercher des sujets similaires à "vba copier colonne tableau structure ligne tab"