Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 VBA

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 !

blancolie

XLDnaute Impliqué
Bonjour le forum,

j'aimerais comprendre certaines expressions trouver ds le codage VBA.

tablo(i, 4)) : le i veut dire quoi et tablo également ?
For i ?

merci de votre aide
 
Bonjour,

je suis entrain de regarder des tutos je voudrai sêtre sur de cette ligne la: Cells(Ligne_Fin + 1, 1), le +1 c'est une ligne en plus et le 1 après la virgule, c'est la colonne, c'est bien çà ?

en vous remerciant
 
bonsoir

déclaration 1 variable:
Dim mavariable as long

déclaration 2 et plus normale
Dim mavariable1 as long
dim mavariable2 as string

la même sur une seule ligne
dim mavariable1 as long , mavariable2 as string

la même sur une seule ligne et abrégée
dim mavariable1& , mavariable2$

pour les format abrégés
& correspond à as long 'numérique limité de -2 147 483 648 à 2 147 483 647
$ correspond à as string' texte
# correspond à as double' numérique avec decimal ou gros chiffre
% correspond à as integer ' numérique limité à de -32 768 à 32 767

il faudra aussi apprendre et connaitre la NOTION DE globale , globale module , public , private et static
 
re
ben soit tu a oublié de la dimer

soit elle est dimée en haut de module , on dit alors que c'est une variable globale module(utilisable dans toutes les sub du module sans la re déclarer )

et si elle est dimée en "PUBLIC" alors c'est une variable globale workbook (utilisable dans tout les module du classeur sans la re déclarer )
 
Voila la macro :

VB:
Sub Macro1()
Dim Num_Ligne As Long
    Num_Ligne = 2 
    Application.DisplayAlerts = False
    While Cells(Num_Ligne, 1) <> ""
        Ligne_Fin = Num_Ligne
        While Cells(Ligne_Fin, 1) = Cells(Ligne_Fin + 1, 1)
             Ligne_Fin = Ligne_Fin + 1
        Wend
        With Range(Cells(Num_Ligne, 1), Cells(Ligne_Fin, 1))
            .HorizontalAlignment = xlLeft
            .VerticalAlignment = xlCenter
            .MergeCells = True
        End With
        Num_Ligne = Ligne_Fin + 1
    Wend
    Application.DisplayAlerts = True
End Sub
 
oui bon il est pas déclarée
mais si je comprends ton intention c'est de repérer la plage pleine en "A" pour y appliquer les propriétés
bon le merge me perturbe un peu sachant que seule la valeur de le ligne 2 sera gardée

bref si tu m'explique en terme non informatique peut etre je comprendrait mieux
 
le but est de fusionner les cellules d'un tableau sur la colonne A tant qu'on ne rencontre pas une ligne vide.

et pour cela on doit déclarer deux variables : la première est Num_ligne et la deuxième est ligne_fin
 
re

comme je connais pas le contexte

solution1 jusqu'a la dernière ligne non vide en partant d'en bas pour la next ligne
VB:
set f= sheets("le nom de la feuille")
with f.range(f.cells(2,1),f.cells(rows.count,1).end(xlup)
  .HorizontalAlignment = xlLeft
  .VerticalAlignment = xlCenter
  .MergeCells = True
end with

solution 2 jusqu'a la derniere ligne en partant de la 2 pour la next ligne
si il y a une cellule de vide entre deux ca s'arrete juste avant cette ligne vide

VB:
set f= sheets("le nom de la feuille")
with f.range(f.cells(2,1),f.cells(2,1).end(xldown)
  .HorizontalAlignment = xlLeft
  .VerticalAlignment = xlCenter
  .MergeCells = True
end with[/CODE

mais attention je réhitere mon avertissement sur la non logique de ta démarche(peut etre ne le sais tu pas)
en effet le mergecells=true va supprimer toutes les valeurs sauf la ligne 2 qu'il gardera dans tes cellules fusionnées
 
Sub macroo()
Set f = Sheets("le nom de la feuille")
with f.range(f.cells(2,1),f.cells(rows.count,1).end(xlup)
.HorizontalAlignment = xlLeft
.VerticalAlignment = xlCenter
.MergeCells = True
End With
End Sub

celle qui est souligné
 
- 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

Discussions similaires

Réponses
16
Affichages
358
Réponses
2
Affichages
401
Réponses
2
Affichages
488
Réponses
15
Affichages
555
Réponses
2
Affichages
221
Réponses
5
Affichages
599
Réponses
6
Affichages
158
Réponses
5
Affichages
815
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…