Macro Copier/Coller une valeur dans une cellule variable

John38

XLDnaute Nouveau
Bonjour,

Je cherche à copier la valeur de ma cellule C3 Feuil1 dans la Feuil2 Colonne C en commençant par la 3ème ligne puis à chaque fois que j'execute la macro descendre de une ligne jusqu'à C14. Dès que la colonne est remplie aller à D3 jusqu'à D14 ainsi de suite jusqu'à la colonne G.

J'ai trouvé un code sur internet, mais il ne change pas de colonne comme je souhaite et ne colle pas la valeur. Il colle la formule qui est dans la case.

Code:
Sub Macro1()
Dim dest As Range 'déclare la variable dest
'définit la variable dest
With Sheets("Feuil2")
    If .Range("C3").Value = "" Then 'si C3 est vide
        Set dest = .Range("C3")
    Else 'sinon la première cellule vide de la colonne C
        Set dest = .Range("C14").End(xlUp).Offset(1, 0)
    End If
End With
'copie et colle la cellule C3 dans la colonne C de l'onglet "Feuil2"
Sheets("Feuil1").Range("C3").Copy Destination:=dest

End Sub

Est ce que vous pouvez m'aider ? Je vous remercie par avance
 

Pierrot93

XLDnaute Barbatruc
Re : Macro Copier/Coller une valeur dans une cellule variable

Bonjour,

pour déterminer la première cellule vide de la plage C3:G14 de la feuille active, et ce, faisant la recherche par colonne... A adapter à ton projet :
Code:
Dim x As Range
Set x = Range("C3:G14").Find("", Range("G14"), xlValues, , 2, 1, 0)
If Not x Is Nothing Then x.Select
bonne journée
@+
 

John38

XLDnaute Nouveau
Re : Macro Copier/Coller une valeur dans une cellule variable

Je suis désolé mais je n'arrive pas à savoir où il faut coller ce code.

Sub Macro1()
Dim x As Range 'déclare la variable dest
'définit la variable dest
With Sheets("Feuil2")
If .Range("C3").Value = "" Then 'si C3 est vide
Set x = .Range("C3")
Else 'sinon la première cellule vide de la colonne C
Set x = Range("C3:G14").Find("", Range("G14"), xlValues, , 2, 1, 0)
If Not x Is Nothing Then x.Select
End If
End With
'copie et colle la cellule C3 dans la colonne C de l'onglet "Feuil2"
Sheets("Feuil1").Range("C3").Copy Destination:=x
End Sub
 

Pierrot93

XLDnaute Barbatruc
Re : Macro Copier/Coller une valeur dans une cellule variable

Re,

pas tout compris de ton code.... ceci devrait suffire :
Code:
Dim x As Range
With Sheets("Feuil2")
    Set x = .Range("C3:G14").Find("", .Range("G14"), xlValues, , 2, 1, 0)
    If Not x Is Nothing Then x.Value = Sheets("Feuil1").Range("C3")
End With
bon après midi
@+
 

opopop

XLDnaute Nouveau
Re : Macro Copier/Coller une valeur dans une cellule variable

Bonjour à tous.

J'avais une petite question à vous poser, comment faire apparaitre dans le code suivant un collage special/valeur à la place du simple copier/coller?

Merci


Sub Macro1()
Dim dest As Range 'déclare la variable dest
'définit la variable dest
With Sheets("Feuil2")
If .Range("C3").Value = "" Then 'si C3 est vide
Set dest = .Range("C3")
Else 'sinon la première cellule vide de la colonne C
Set dest = .Range("C14").End(xlUp).Offset(1, 0)
End If
End With
'copie et colle la cellule C3 dans la colonne C de l'onglet "Feuil2"
Sheets("Feuil1").Range("C3").Copy Destination:=dest

End Sub
 

opopop

XLDnaute Nouveau
Re : Macro Copier/Coller une valeur dans une cellule variable

'copie et colle la cellule C3 dans la colonne C de l'onglet "Feuil2"
Sheets("Feuil1").Range("C3").Copy Destination:=dest

En fait ma cellule C3 de la feuille 1 est une formule donc quand j'execute ma macro, le resultat est 0 car ma macro ne prend pas en compte la valeur mais ma formule. Moi je voudrais donc que ma macro ne recopie que la valeur inscrite dans la cellule et non la formule. (je pense que le problème se trouve sur la partie du code ci-dessus).

J'espère avoir été plus clair

Merci
 

Discussions similaires

Statistiques des forums

Discussions
314 060
Messages
2 105 197
Membres
109 287
dernier inscrit
Pistol