Trouver la dernière cellule contenant une valeur et faire un copier coller

Bonjour,

J'utilise un tableau Excel contenant différents prix de P1 à P4, je souhaite copier coller (en valeur et dans la même cellule) la dernière cellule contenant une valeur :

exemple: sur le fichier joint, la colonne P1, la dernière cellule contenant une valeur est la cellule C12, donc j'ai besoin de faire un copier coller en valeur de la cellule C12 dans la cellule C12

et ainsi de suite pour les autres colonne P2; P3 et P4

MERCI

4pj.xlsx (281.43 Ko)

Bonjour,

Ta question suppose que dans les cellules concernée il y ait une formule, auquel cas tu vises à l'écraser pour que la valeur ne change plus, et tu fais alors :

    With ActiveSheet.Cells(x, y)
        .Value = .Value 'on oublie le copier-coller inutile... !
    End With

mais ce n'est pas le cas, la valeur est fixe, donc je ne comprends pas la manoeuvre... ???

Cordialement.

Bonjour,

Ta question suppose que dans les cellules concernée il y ait une formule, auquel cas tu vises à l'écraser pour que la valeur ne change plus, et tu fais alors :

    With ActiveSheet.Cells(x, y)
        .Value = .Value 'on oublie le copier-coller inutile... !
    End With

mais ce n'est pas le cas, la valeur est fixe, donc je ne comprends pas la manoeuvre... ???

Cordialement.

merci pour votre réponse MFerrand,j'ajoute une autre chose, que le dernière cellule contenant une valeur est sous forme de calcul de formule, ,et donc j'essaye d'écraser la formule et ne saisir que la valeur obtenue

pourriez vous me montrer comment appliquer la code VB sur le fichier joint

encore merci

Je viens de te dire que je n'ai pas vu de formule !

Je viens de te dire que je n'ai pas vu de formule !

re

ci joint le fichier complet avec les formules, en faite je n'ai pas mis les formules au début pour ne pas compliquer la tâche et pour que le problème soit bien compris

merci

6pj.xlsx (285.31 Ko)

Re,

Essaie ceci :

Sub Test()
    Dim k%, i%
    With Worksheets("Feuil1").Range("B3").CurrentRegion
        For k = 1 To .Columns.Count
            If .Cells(1, k) <> "" Then
                i = WorksheetFunction.Count(.Columns(k))
                With .Cells(1, k).Offset(i)
                    .Value = .Value
                End With
            End If
        Next k
    End With
End Sub

Cordialement.

Rechercher des sujets similaires à "trouver derniere contenant valeur copier coller"