Macro pour remplir un tableau

  • Initiateur de la discussion Initiateur de la discussion debutantn1
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

D

debutantn1

Guest
Bonjour à tous,

Je voudrais faire une macro qui remplisse un tableau automatiquement à partir d'un premier tableau que je crée.
Une deuxième macro pour remettre des valeurs du tableau à zéro.
Je joins un fichier pour expliquer.

Merci à tous,

Paul
 

Pièces jointes

Re : Macro pour remplir un tableau

Bonsoir,

Oui j'ai fait expres de mettre une ligne car il y en aura dans mon tableau.
Le nouvel onglet avec le tableau 2 doit être nommé "commande".

Merci de ton aide,

Paul
 
Re : Macro pour remplir un tableau

Bonjour debutantn1,
je vous dépose en pièce jointe un exemple qui convient à votre demande, du moins je l'espère.

Ensuite, voici une petite explication pour vous faire comprendre pourquoi votre :
Code:
Dim Quant as String
Quant.Value = 0

ne fonctionne pas. Vous déclarez une variable de type "String", qui est en fait une variable texte. Il n'est pas possible de faire des opérations mathématiques sur ces dernières. Ce même principe serait également valable même si votre variable contenait un chiffre et que vous la déclariez en "String". Vous ne pourriez pas lui faire faire des opérations. J'espère que c'est plus clair !

Cordialement,

Étienne
 

Pièces jointes

Re : Macro pour remplir un tableau

Re,

voici le fichier, j'ai placé le tableau en A1😀xxx

Code:
Option Explicit
Sub Tableau()

Dim Tablo, k As Long, y As Long

Tablo = Sheets("Feuil1").Range("B5:D" & Sheets("Feuil1").Range("B65536").End(xlUp).Row)
Sheets.Add After:=Sheets(Sheets.Count)
y = 2
With ActiveSheet
  .Name = "Commande"
  .Range("A1:C1") = Sheets("Feuil1").Range("B4:D4").Value
  .Cells(1, 4) = "Total"
  For k = 1 To UBound(Tablo)
     If Tablo(k, 3) <> 0 Then
       .Cells(y, 1) = Tablo(k, 1)
       .Cells(y, 2) = Tablo(k, 2)
       .Cells(y, 3) = Tablo(k, 3)
       .Cells(y, 4) = .Cells(y, 2) * .Cells(y, 3)
       .Cells(y, 4).NumberFormat = "00.00 €"
       y = y + 1
     End If
     Tablo(k, 3) = ""
  Next
  
  With .Range("A1:D" & .Range("D65536").End(xlUp).Row)
    .HorizontalAlignment = xlCenter
    With .Borders
       .LineStyle = xlContinuous
       .Weight = xlThin
       .ColorIndex = xlAutomatic
    End With
  End With
  
  .Range("D2:D" & .Range("D65536").End(xlUp).Row).HorizontalAlignment = xlRight
  .Range("A1").Select
End With
  
Sheets("Feuil1").Range("B5").Resize(UBound(Tablo), 3) = Tablo

End Sub

A+

Bonsoir Etienne
 

Pièces jointes

Dernière édition:
Re : Macro pour remplir un tableau

Bonsoir à tous,
Malgré tous mes efforts je ne suis jamais parvenu à développer une macro qui me permettrait de remettre à Zéro les valeurs des tableaux.
Je me permets de vous demander de l'aide concernant le fichier ci-joint.
Merci
Cordialement
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
14
Affichages
505
Réponses
1
Affichages
139
Réponses
11
Affichages
365
Retour