Base de données: ajouter une colonne avec date du jour

Fermé
strikas06 Messages postés 21 Date d'inscription mercredi 24 octobre 2012 Statut Membre Dernière intervention 6 novembre 2012 - 31 oct. 2012 à 13:33
strikas06 Messages postés 21 Date d'inscription mercredi 24 octobre 2012 Statut Membre Dernière intervention 6 novembre 2012 - 31 oct. 2012 à 15:53
Bonjour à tous,

Je suis gros débutant en VBA :)! Je fais de la gestion de base de donnée et je souahiterais automatiser le plus possible les tâches.

J'ai un workbook avec plusieurs sheets. En collant une plage de données de la sheet 2 vers la sheet 1 je cherche à rajouter sur la colonne de droite (sur un nombre de lignes limité à la plage de données que je souahite coller) la date du jour.

Si quelqu'un a une idée!!!!!

Merci beaucoup pour votre aide.

5 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 711
Modifié par gbinforme le 31/10/2012 à 15:15
bonjour,

Avec cette macro événementielle dans la sheet 1:

Private Sub Worksheet_Change(ByVal sel As Range)
Dim lig As Long, col As Integer
If Application.CutCopyMode Then
    col = sel.Columns.Count + sel.Column
    Application.EnableEvents = False
    For lig = 0 To sel.Rows.Count - 1
        Cells(sel.Row + lig, col).Value = Date
    Next lig
    Application.EnableEvents = True
End If
End Sub

Tu peux positionner ton collage à n'importe quel endroit de la feuille mais il faut qu'il reste une colonne libre à droite.

Toujours zen
La perfection est atteinte, non pas lorsqu'il n'y a plus rien à ajouter, mais lorsqu'il n'y a plus rien à retirer. Antoine de Saint-Exupéry
0
strikas06 Messages postés 21 Date d'inscription mercredi 24 octobre 2012 Statut Membre Dernière intervention 6 novembre 2012
31 oct. 2012 à 15:06
Salut!

Je vais essayer ta proposition! Merci mille fois pour la rapidité de ta réponse.
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 711
31 oct. 2012 à 15:16
RE: j'ai un peu simplifié la macro.
0
strikas06 Messages postés 21 Date d'inscription mercredi 24 octobre 2012 Statut Membre Dernière intervention 6 novembre 2012
31 oct. 2012 à 15:24
A quel endroit? excuse moi de demander mais je vois pas... Ma macro ci-dessous est située dans module 1
0
strikas06 Messages postés 21 Date d'inscription mercredi 24 octobre 2012 Statut Membre Dernière intervention 6 novembre 2012
31 oct. 2012 à 15:15
Re!

en fait le collage de ma plage de cellule s'effectue de la sorte:

Sub GlobalArchivageCash()

Sheets("WeeklyCash").Select
ligfinnn = Cells(Cells.Rows.Count, "E").End(xlUp).Row
Range("A2:E" & ligfinnn).Cut

Dim DLLL As Long

With Sheets("Datas")
DLLL = .Range("A65536").End(xlUp).Row
If Not .Cells(DLLL, 1) = "" Then DLLL = DLLL + 1
End With '

Sheets("Datas").Select
Cells(DLLL, 1).Select
ActiveSheet.Paste


Columns("A:E").AutoFit

Columns("E:E").Select
With Selection.Font
.Name = "Calibri"
.Size = 9
.Bold = True
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
End Sub

et en executant cette macro j'aimerais que dans la colonne de droite soit ajouté une colonne avec la date du jour... Je ne saurais pas intégrer la macro que tu me proposes dans celle ci :(((((. Tu saurais par hasard?
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 711
31 oct. 2012 à 15:50
bonjour,

Ta question faisait croire que tu collais manuellement, d'où ma réponse.

Voici comment j modifierai ta macro pour obtenir le résultat souhaité :

Sub GlobalArchivageCash()
Dim DLLL As Long, ligfinnn As Long
With Sheets("Datas")
    DLLL = .Range("A65536").End(xlUp).Row + 1
    Sheets("WeeklyCash").Select
    ligfinnn = Cells(Cells.Rows.Count, "E").End(xlUp).Row
    Range("A2:E" & ligfinnn).Cut _
        Destination:=.Cells(DLLL, 1)
    For DLLL = DLLL To DLLL + ligfinnn - 2
        Cells(DLLL, "F").Value = Date
    Next DLLL
End With

Columns("A:E").AutoFit

Columns("E:E").Select
With Selection.Font
.Name = "Calibri"
.Size = 9
.Bold = True
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
End Sub
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
strikas06 Messages postés 21 Date d'inscription mercredi 24 octobre 2012 Statut Membre Dernière intervention 6 novembre 2012
31 oct. 2012 à 15:53
Tellement sympa! honnettement merci et congrats pour le level en VBA! heureusement pour moi que tu es là :). Merci j'essaye ça!
0