Macro pour copier cellule en dessous

Bonjour,

Je travaille sur une colonne avec certaines cellules vides. Je voudrais créer une macro ou une formule me permettant de copier coper la cellule juste en dessous de la cellule vide dans ma cellule vide pour toute ma colonne, du moins ou elle s’arrête.

J’ai beau essayé avec plusieurs beaucoup de codes ça n’e fonctionne pas :/ auriez vous une idée ? Merci pour votre aide

Bonne journée

Dim lastVal as integer 

lastVal = Range(ActiveCell.Column & Rows.Count).End(xlUp).Row

For i = 1 To lastVal
      If isEmpty(ThisWorksheet.Cells(i, ActiveCell.Column)) 
            ThisWorksheet.Cells(i, ActiveCell.Column) = ThisWorksheet.Cells(i + 1, ActiveCell.Column)
      End If
      Next i

Ca devrait être une bonne base, mais je suis pas sûr pour l'utilisation de "ThisWorksheet"

Bonjour,

Une proposition à étudier.

Cdlt.

334polak6.xlsm (20.50 Ko)

Merci à vous, le fichier est parfait C'est exactement ce que je cherchais !!!!!!

Bonne journée à vous

En faite cela n’a pas fonctionné sur mon fichier :/

En faite jai une donnée B1 par exemple, et une donnée en A2. J’aimerais pouvoir copier la donnée A2 en A1, mais ca ne fonctionne pas avec ce code. J’aimerais le faire sur toute la colonne À en basant sur les cellules vides.

Voici le code proposé par Jean Eric:

Public Sub EmptyCells()

Dim lastRow As Long, rng As Range, rng2 As Range

With ActiveSheet

lastRow = .Cells(.Rows.Count, 1).End(xlUp).Row

Set rng = .Cells(2, 1).Resize(lastRow - 1)

On Error Resume Next

Set rng2 = rng.SpecialCells(xlCellTypeBlanks)

On Error GoTo 0

If Not rng2 Is Nothing Then

With rng2

.Font.Color = vbRed

.FormulaR1C1 = "=R[1]C"

End With

End If

rng.Value = rng.Value

End With

End Sub

Vous avez une idée ? Merci pour votre aide

Rechercher des sujets similaires à "macro copier dessous"