Faire appliquer une formule de la ligne jusqu'à la dernière ligne

Bonjour,

Pour un projet de fin d'étude j'analyse des données pour fixer des effectifs.

Actuellement j'effectue le tri des données manuellement, j'aimerai pouvoir automatiser l'assemblement des données nécessaires grâce à la VBA, pour ensuite l'utiliser TCD.

Voici la formule en question = SI(ESTVIDE(D1);" ";TEXTE(D1;"jj/mm/aaaa")& " : " &B1& " : " &C1& " : " &G1& " : " &AB1)

exemple appliquer sur la cellule "AC1" qui est vide de base.

Ici je prend les données que j'ai besoin est les assemble pour une ligne et ensuite j'étend manuellement avec la souri pour que la formule s'applique pour chaque ligne. Ligne 1 à XXXX lignes.

J'aimerai savoir si c'est possible d'automatiser ce processus en ayant le nombre de ligne totale, grâce à ce code :

DerLigne = Range("A" & Rows.Count).End(xlUp).Row

J'aimerai automatiser car le nombre de ligne de données et variable. Comme ça j'ai pas a étendre la formule jusqu'à l'infini pour en être sur, je trouve pas ça intuitif.

Je vous remercie d'avance pour votre.

Hello,

Yes tu veux faire une boucle ;)

Petit exemple rapide

Sub test()

DerLigne = Range("A" & Rows.Count).End(xlUp).Row

For i = 2 to DerLigne

    Range("A" & i ) = "aaa"

Next i

End sub

Si ta dernière ligne c'est la ligne 10, pour toutes tes cellules de A2 à A10 il mettra le contenu "aaa" dans la cellule

Si ta dernière ligne c'est la ligne 25, pour toutes tes cellules de A2 à A25 il mettra le contenu "aaa" dans la cellule

N'hésite pas si besoin

@+

Je vous remercie pour l'exemple, j'ai bien compris le processus je vais essayer ça avec la formule.

J'ai juste un doute, si j'insère la formule sous forme de texte comme si dessous et que pour avoir les données exacte de la ligne je peux associer i directement dans la formule avec le chiffre de la cellule ?

Sub test()

DerLigne = Range("A" & Rows.Count).End(xlUp).Row

For i = 2 to DerLigne

    Range("A" & i ) = "= SI(ESTVIDE(Di);" ";TEXTE(Di;"jj/mm/aaaa")& " : " &Bi& " : " &Ci& " : " &Gi& " : " &ABi)" ' ici j'ai associer les numéros de cellules à récupérer  avec la variable i

Next i

End sub

Je vais quand meme faire le test.

Merci encore.

Hello,

Ca ne fonctionnera pas, pour appeler une cellule dans un module VBA il faut déclarer comme ceci : Range("A1"). Dans notre cas vu que c'est une boucle, on serait plutôt sur du Range("A" & i )

Est ce que tu pourrais transmettre ton fichier, au lieu de faire une formule ce sera plus simple de passer par une condition du genre :

Sub test()

DerLigne = Range("A" & Rows.Count).End(xlUp).Row

For i = 2 to DerLigne

  If Range("D" & i) = "" Then

     Range("A" & i) = ""

  Else

     Range("A" & i) = Format(Range("D"&i),"jj/mm/aaaa") & ":" & Range("B"& i) & ":" & Range("C"&i) & ":" & Range("G"&i) & ":" & Range("AB"&i)

  End if

Next i

End sub

N'hésite pas si besoin

@+

Oui, je peux t'envoyer un fichier un peu similaire avec peu de ligne car le fichier de base contient des données personnels et va jusqu'à 5700 ligne qui va de la colonne A:AG.

Je reçois enfaite un fichier de pointage de gestion de livraison de colis. J'aimerai à l'aide d'une macro seulement récupérer et assembler les données que j'ai besoin pour effectuer des analyses.

j'ai besoin assembler les donnée A1&B1&E1&H1&I1&M1 tous ça sur la colonne O1 et ainsi de suite suivant la ligne.

13test.xlsm (11.81 Ko)

Hello essaie ça et tiens moi au jus :)

@+

22test-3.xlsm (20.65 Ko)

Super ça fonctionne .

Je te remercie.

J'ai une autre question par rapport à la ligne pour déterminer la dernière

DerLigne = Range("A" & Rows.Count).End(xlUp).Row

C'est possible de déterminer la dernière ligne à partir d'une cellule par Exemple A2 et de connaître la dernière ligne de la colonne ?

La dernière ligne de la colonne ? je n'ai pas compris

Par exemple je voudrais placer mes boutons de macro sur les 5 première lignes je vais donc collé mes données à partir de la ligne 6. Dans ce cas la je voudrais avoir le nombre de ligne à partir de la cellule A6 et non toute la colonne A.

image
Rechercher des sujets similaires à "appliquer formule ligne derniere"