Copier coller celulle itération avec date
Résolu
loulou5986
Messages postés
12
Date d'inscription
Statut
Membre
Dernière intervention
-
romain7254 Messages postés 1020 Date d'inscription Statut Membre Dernière intervention -
romain7254 Messages postés 1020 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
https://www.cjoint.com/?3BzkR1Z8q4p
Je joue à l'apprentie sorcière du VBA... Pas très concluant !
Voici ce que j'essaie de faire : quand je tape un nouveau prix dans ma cellule B4,
j'aimerais que ce prix s'affiche dans la première ligne de la seconde colonne de mon tableau.
Puis quand je retape un nouveau prix, il s'affiche dans la seconde ligne de ma seconde colonne, et ainsi de suite...
Pour cela j'ai déjà trouvé un code sur un forum (à l'aide d'un bouton)
cependant excel me renvoie objet non défini...
En plus de cela, j'aimerais qu' à chaque fois que le prix est modifié, la date à laquelle il est modifié apparaisse dans la première colonne de mon tableau
Pouvez vous m'aider svp?
Merci d'avance
https://www.cjoint.com/?3BzkR1Z8q4p
Je joue à l'apprentie sorcière du VBA... Pas très concluant !
Voici ce que j'essaie de faire : quand je tape un nouveau prix dans ma cellule B4,
j'aimerais que ce prix s'affiche dans la première ligne de la seconde colonne de mon tableau.
Puis quand je retape un nouveau prix, il s'affiche dans la seconde ligne de ma seconde colonne, et ainsi de suite...
Pour cela j'ai déjà trouvé un code sur un forum (à l'aide d'un bouton)
Sub miseajour() Dim lifin As Long, v v = ActiveSheet.Range("B4").Value lifin = Activesehet.Range("G" & Rows.Count).End(xlUp).Row If ActiveSheet.Range("G3") <> "" Then lifin = lifin + 1 ActiveSheet.Range("G" & lifin).Value = v End Sub
cependant excel me renvoie objet non défini...
En plus de cela, j'aimerais qu' à chaque fois que le prix est modifié, la date à laquelle il est modifié apparaisse dans la première colonne de mon tableau
Pouvez vous m'aider svp?
Merci d'avance
A voir également:
- Copier coller celulle itération avec date
- Historique copier coller - Guide
- Copier coller pdf - Guide
- Copier-coller - Accueil - Informatique
- Style d'écriture a copier coller - Guide
- Symbole clavier copier coller - Guide
5 réponses
Bonjour,
Essayez avec ceci (je suis aussi apprentis sorcier du VBA, mais voyons si cela fonctionne)
PS : Je n'ai pas pu voir votre fichier, le site étant bloqué pour moi.
Cordialement, Romain.
Essayez avec ceci (je suis aussi apprentis sorcier du VBA, mais voyons si cela fonctionne)
Sub miseajour()
Dim lifin As Long, v
Dim cell As Range
v = ActiveSheet.Range("B4").Value
lifin = ActiveSheet.Range("G1:G" & Range("G" & Rows.Count).End(xlUp).Row)
If ActiveSheet.Range("G3") <> "" Then lifin = lifin + 1
ActiveSheet.Range("G" & lifin).Value = v
ActiveSheet.Range("F" & cell.Row).Value = Date
End If
End Sub
PS : Je n'ai pas pu voir votre fichier, le site étant bloqué pour moi.
Cordialement, Romain.
romain7254
Messages postés
1020
Date d'inscription
Statut
Membre
Dernière intervention
297
La macro n'a pas l'air de fonctionner (et je m'en doutais un peu), j'y travaille n'ayez aucune inquiétude ;)
Voila, ça fonctionne !
Cordialement, Romain.
Sub test()
Dim rng As Range, cell As Range
Dim i As Integer
i = 3
While (Cells(i, 7).Value <> "")
i = i + 1
Wend
Cells(i, 7).Select
Set rng = ActiveSheet.Range("B4")
With rng.Cells
.Copy
If ActiveSheet.Range("G3") = "" Then
ActiveSheet.Range("G3").PasteSpecial xlPasteValues
End If
If ActiveSheet.Range("G3") <> "" Then
ActiveCell.PasteSpecial xlPasteValues
End If
ActiveCell.Offset(, -6).Value = Date 'entre la date dans la colonne A. Mettre -1 pour entrer la date dans la colonne F
End With
End Sub
Cordialement, Romain.
Re- Bonjour,
J'ai essayé d'adapter le code à un autre fichier. Et là, grand mystère le code ne marche plus !
Au début je n'avais pas rajouté Worksheets("BCC") devant Cells(i,10).Select mais alors : excel m'indique : erreur 1004 définie par l'application ou l'objet. J'ai cru comprendre qu'excel ne comprenait pas dans quelle sheet il devait prendre la cellule (i,10)
Le probleme est qu'une fois cet incident résolu alors : Il copie bel et bien une premiere fois la cellule voulue mais ensuite, il refuse de copier la même cellule sur la ligne suivante ...
Je ne comprends pas on a pourtant bien notre compteur qui s'incrémente dans notre boucle...
Puis je encore quémander votre aide?
Merci d'avance
Sub test()
Dim rng As Range
Dim cell As Range
Dim i As Integer
i = 5
While (Cells(i, 10).Value <> "")
i = i + 1
Wend
Worksheets("BCC").Cells(i, 10).Select
Set rng = ActiveSheet.Range("B35")
With rng.Cells
.Copy
If ActiveSheet.Range("J5") = "" Then
ActiveSheet.Range("B35").PasteSpecial xlPasteValues
End If
If ActiveSheet.Range("J5") <> "" Then
ActiveCell.PasteSpecial xlPasteValues
End If
ActiveCell.Offset(, -1).Value = Date 'entre la date dans la colonne A. Mettre -1 pour entrer la date dans la colonne F
End With
End Sub
J'ai essayé d'adapter le code à un autre fichier. Et là, grand mystère le code ne marche plus !
Au début je n'avais pas rajouté Worksheets("BCC") devant Cells(i,10).Select mais alors : excel m'indique : erreur 1004 définie par l'application ou l'objet. J'ai cru comprendre qu'excel ne comprenait pas dans quelle sheet il devait prendre la cellule (i,10)
Le probleme est qu'une fois cet incident résolu alors : Il copie bel et bien une premiere fois la cellule voulue mais ensuite, il refuse de copier la même cellule sur la ligne suivante ...
Je ne comprends pas on a pourtant bien notre compteur qui s'incrémente dans notre boucle...
Puis je encore quémander votre aide?
Merci d'avance
Sub test()
Dim rng As Range
Dim cell As Range
Dim i As Integer
i = 5
While (Cells(i, 10).Value <> "")
i = i + 1
Wend
Worksheets("BCC").Cells(i, 10).Select
Set rng = ActiveSheet.Range("B35")
With rng.Cells
.Copy
If ActiveSheet.Range("J5") = "" Then
ActiveSheet.Range("B35").PasteSpecial xlPasteValues
End If
If ActiveSheet.Range("J5") <> "" Then
ActiveCell.PasteSpecial xlPasteValues
End If
ActiveCell.Offset(, -1).Value = Date 'entre la date dans la colonne A. Mettre -1 pour entrer la date dans la colonne F
End With
End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
La macro fonctionne uniquement sur une page. Vous avez modifié des range qui n'ont donné plus aucune logique à la macro.
Essayez donc avec ce code :
Cordialement, Romain.
La macro fonctionne uniquement sur une page. Vous avez modifié des range qui n'ont donné plus aucune logique à la macro.
Essayez donc avec ce code :
Sub test() Dim rng As Range Dim cell As Range Dim i As Integer i = 5 While (Cells(i, 10).Value <> "") i = i + 1 Wend Cells(i, 10).Select 'cellule de la page actuelle Set rng = ActiveSheet.Range("B35") With rng.Cells .Copy If ActiveSheet.Range("J5") = "" Then ActiveSheet.Range("J5").PasteSpecial xlPasteValues 'endroit ou tu colles les données End If If ActiveSheet.Range("J5") <> "" Then ActiveCell.PasteSpecial xlPasteValues End If ActiveCell.Offset(, -1).Value = Date 'entre la date dans la colonne précédente End With End Sub
Cordialement, Romain.