IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Insérer la date avec une bouton en VBA


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Technicien réseaux et télécoms
    Inscrit en
    Août 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Technicien réseaux et télécoms

    Informations forums :
    Inscription : Août 2011
    Messages : 1
    Points : 3
    Points
    3
    Par défaut Insérer la date avec une bouton en VBA
    Je suis débutant en VBA , je veux crée une bouton pour insérer la date dans une seule colonne "Date" et pour chaque click en passe a ligne suivante.

    Exemple :

    A4 contient une date
    Click A5=Date Aujourdhui
    etc

    Code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Private Sub CommandButton1_Click()
    ActiveCell.FormulaR1C1 = DateValue(Date)
    ActiveCell.Offset(0, 1).Range("A1").Select
    End Sub

  2. #2
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut heu
    oui ok

    en fait ce qu'il te faut c'est déterminé la ligne suivante tout simplement car les select(mauvaise habitude a perdre ) ralentissent beaucoup la mécanique

    donc tes dates sont en colonne "A"

    on va donc chercher la première ligne de libre après les précédentes
    pour cela il y a par exemple cet petite ligne de code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    set macellule=range("A" & range("A"& rows.count ).end(xlup).row ) 
    'tu peut faire apres 
    macellule.offset(,1)=format(Date,"dd/mm/yyyy")'format le plus classique
    tu peut faire la chose directement aussi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    range("A" & range("A"& rows.count ).end(xlup).row ).offset(,1)=format(Date,"dd/mm/yyyy")'format le plus classique
    l'une ou l'autre tu la met dans la sub du bouton

    edit Autant pour moi j'avais oublié les offsets maintenant c'est bon
    au plaisir

  3. #3
    Membre émérite
    Inscrit en
    Octobre 2010
    Messages
    1 401
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 401
    Points : 2 684
    Points
    2 684
    Par défaut
    Bonjour

    Citation Envoyé par daboussiarafet Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Private Sub CommandButton1_Click()
    ActiveCell.FormulaR1C1 = DateValue(Date)
    ActiveCell.Offset(0, 1).Range("A1").Select
    End Sub

    Comme ceci, ça devrait fonctionner :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Private Sub CommandButton1_Click()
     
    Dim f As Worksheet, ligne As Long, Ladate As Date
     
     
    Set f = ActiveSheet 
    'ou Set f = ThisWorkbook.Worksheets("Feuil1")
     
    ligne = f.Cells(Rows.Count, 1).End(xlUp).Row
     
    Ladate = DateValue(Now) 'Date
     
    f.Cells(ligne, 1).Offset(1, 0).Value = Ladate
     
    End Sub

  4. #4
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    Ou encore
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub CommandButton1_Click()
     
    With ThisWorkbook.Worksheets("Feuil1")
        .Cells(.Rows.Count, 1).End(xlUp)(2) = Date
    End With
    End Sub

Discussions similaires

  1. Réponses: 2
    Dernier message: 08/07/2013, 13h39
  2. Réponses: 23
    Dernier message: 26/09/2007, 12h35
  3. Réponses: 9
    Dernier message: 19/02/2007, 20h33
  4. Multiplier une date avec une heure
    Par tazmania dans le forum Access
    Réponses: 8
    Dernier message: 29/12/2006, 10h21
  5. Réponses: 7
    Dernier message: 27/12/2006, 17h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo