Copier valeur cellule vers dernière ligne libre d'un tableau

Résolu
juer31 Messages postés 114 Date d'inscription   Statut Membre Dernière intervention   -  
juer31 Messages postés 114 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Dans mon classeur j'ai deux feuilles (Calcul et Historique) et j'aimerai copier les valeur des cellules dans Calcul et les transférer sur la prochaine ligne vide du tableau dans Historiques

je vous joint un exemple de mon fichier pour mieux comprendre : https://www.cjoint.com/c/FAtn4kBm15u

J'ai essayer en VBA mais je n'y parvient pas. Je ne suis pas une expert en VBA mais je me débrouille habituellement mais pas cette fois.

Est-ce possible aussi que lorsque la copie c'est fais d'éffacer la valeur des cellules qui ne contienne pas de formule?

Merci beaucoup d'avance pour votre aide
A voir également:

3 réponses

ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Bonjour

Un début à compléter
http://www.cjoint.com/c/FAtq2rsy7XI

Cdlmnt
0
juer31 Messages postés 114 Date d'inscription   Statut Membre Dernière intervention   6
 
Si j'essai d'ajouter un ligne "description" ça ne marche pas!
J'utilise excel 2013

Option Explicit

' configuration feuille Calcul
Public Const FC = "CALCUL"
Public Const celclient = "C6"
Public Const celcontact = "E6"
Public Const celdescription = "C9"

' configuration feuille historique
Public Const FH = "HISTORIQUE É"
Public Const coclient = "D"
Public Const cocontact = "I"
Public Const codescription = "E"
Public Const lideb = 12

Public Sub OK()
Dim client As String, contact As String, liFH As Long
With Sheets(FC)
client = .Range(celclient).Cells(1, 1).Value
Description = .Range(celdescription).Cells(1, 1).Value
contact = .Range(celcontact).Cells(1, 1).Value
' etc ....
.Range(celclient).Cells(1, 1).Value = ""
.Range(celcontact).Cells(1, 1).Value = ""
End With
With Sheets(FH)
liFH = .Range(coclient & Rows.Count).End(xlUp).Row + 1
If liFH <= lideb Then liFH = lideb + 1
.Range(coclient & liFH).Value = client
.Range(codescription & liFH).Value = Description
.Range(cocontact & liFH).Value = contact
' etc ...
End With
End Sub
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
De rien,

Si j'essai d'ajouter un ligne "description" ça ne marche pas!
difficile d'interpréter !

Essaies d'ajouter la variable description à la liste des variables

Public Sub OK()
Dim client As String, contact As String, liFH As Long, description as string

Cdlmnt
0
juer31 Messages postés 114 Date d'inscription   Statut Membre Dernière intervention   6
 
Merci bcp!
0