VBA - Macro top longue (+ de 10mn)

Bonjour à tous,

Je viens solliciter votre aide car j'ai une macro qui prend plus de 10 minutes pour s'arrêter.

Celle-ci permet de copier la premier cellule d'une colonne jusque la prochaine cellule non-vide et répéter l'action jusqu'à la fin de la table de données. La table de données fait plus de 30 000 lignes.

C'est la raison pour laquelle, j'aurais aimé savoir si vous aviez une solution permettant d'effectuer cette tâche plus rapidement.

Je joins un fichier "exemple" où il n'y a que 28 lignes à traiter.

Je vous remercie par avance.

Corentin

21classeur1.xlsm (18.64 Ko)

Bonjour,

Teste avec ceci

Sub Procédure_1()
 With ActiveSheet.Range("C3").CurrentRegion
 .SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"
 .Value = .Value
 End With
End Sub

Bonjour

Moins de 2 secondes pour 30 000 lignes avec le code de CRIQUIER

Cordialement

Bonjour,

Une proposition Excel 2016 avec Récupérer et transformer (Power Query).

Cdlt.

10classeur1.xlsx (24.01 Ko)

Bonjour à tous,

Le

End With 

est mal placé, non ? Il devait se situer après le

Next R
Sub test()

Dim DernLigne As Long
    DernLigne = Range("B" & Rows.Count).End(xlUp).Row

    Application.ScreenUpdating = False

    Dim R As Long

With ActiveSheet

        For R = 3 To DernLigne
    If Cells(R, 3) = "" Then Cells(R, 3) = Cells(R - 1, 3)
    Next R

    End With
End Sub

Cordialement,

Merci à tous pour vos réponses c'est top !

Rechercher des sujets similaires à "vba macro top longue 10mn"