Fonction commandbutton

Fonction commandbutton - VB/VBA/VBS - Programmation

Marsh Posté le 08-11-2005 à 18:06:41    

Bonsoir à tous,
 
Débutant sur excel (2003) j'ai crée un petit programme.  
Sur ma page d'accueil, il y a un bouton de commande et je ne m'y connais alors pas du tout sur vba.
j'aimerai connaître le code à entrer sous vba : lorsque je clique sur mon bouton de commande, il me copie un onglet nommé "masque" et me met la date du jour ainsi que le service (matinée, soirée, nuit) en nouveau nom d'onglet en fonction d'une plage horaire.
 
Par ailleurs si vous avez des adresses à me communiquer pour apprendre le vba, je vous en remercie d'avance.
MERCI PAR AVANCE. :bounce:

Reply

Marsh Posté le 08-11-2005 à 18:06:41   

Reply

Marsh Posté le 09-11-2005 à 18:10:22    

Salut,  
 
voilà ce que j' ai trouvé :  
 
Private Sub CommandButton1_Click()    'Sur ton commandbutton1
Range("A3" ) = Date        'La cellule("A3" ) à pour contenu la date du jour
Range("A4" ) = Time         'La cellule("A4" ) à pour contenu l' heure  
 
If Range("A4" ).Value >= Range("D1" ).Value Then
If Range("A4" ).Value <= Range("D2" ).Value Then  'Si l' heure est entre telle plage horraire (que tu as définis dans les cellule D1:D3)
 
Range("A5" ) = "Matin"   'La celluleA5" ) à pour contenu me mot matin
End If
End If  
 
If Range("A4" ).Value >= Range("D2" ).Value Then   'Si valeur supérieur à D2 et inférieur à D3
If Range("A4" ).Value <= Range("D3" ).Value Then
Range("A5" ) = "Après -midi"        'La cellule("A5" ) à pour contenu le mot Après -midi
End If
End If
 
If Range("A4" ).Value >= Range("D3" ).Value Then  'Si supérieur à D3
Range("A5" ) = "Soir"     'La cellule("A5" ) à pour contenu le mot Soir
End If
 
Range("A3:A5" ).Select   'Les cellules A3:A5 sont séléctionner
Selection.Copy
ActiveSheet.Shapes("masque" ).Select     'Selection de l' image masque
ActiveSheet.Paste                                'Copie de l' image
Application.CutCopyMode = False           'Fin de copie de l' image
Range("A1:A3" ) = ""                             'Les cellules A1:A3 ont un contenu nul  
 
End Sub
 
Est -ce que tu voulais ?
 
Pour répondre à ta 2eme questions :  
 
Je pense qu' il faut que tu t' achète un petit bouqin VBA. C' est ce que j' ai fait, et je l' utilise encore.

Reply

Marsh Posté le 09-11-2005 à 18:32:44    

Salut Yves,
Voilà une petite macro qui fais ce que tu veux. elle est à placer dans la procèdure commandbutton _click (click droit dans ton userform/code):

Code :
  1. 'mise en pace du nom de la feuille
  2. Dim nom
  3. 'Pour obtenir la date sans les / qui ne sont pas admis
  4. 'en nom de feuille replacés par des "_"
  5. nom = Day(Date) & "_" & Month(Date) & "_" & Year(Date) & "_"
  6. 'Mise en place du créneau horaire à toi d'adapter les heures
  7. If Time() > "08:00:00" And Time() <= "15:59:59" Then
  8.      nom = nom & " Matin"
  9. Else
  10.      If Time() >= "16:00:00" And Time() <= "23:59:59" Then
  11.           nom = nom & " Soirée"
  12.      Else
  13.           nom = nom & " Nuit"
  14.      End If
  15. End If
  16. 'selection et copie de la feuille masque
  17. Sheets("Masque" ).Select
  18. Sheets("Masque" ).Copy After:=Sheets(Worksheets.Count) 'en dernière position
  19. 'renomer la feuille
  20. ActiveSheet.Name = nom


 

YVES951 a écrit :

Par ailleurs si vous avez des adresses à me communiquer pour apprendre le vba, je vous en remercie d'avance.
MERCI PAR AVANCE. :bounce:


tu trouveras sur ce Post pas mal d'information qui t'aideront.
 
bon courage

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed