Excel + Visual Basic Application

Sabrina81 -  
upper Messages postés 7 Statut Membre -
Bonjour,
Petit soucis...J'ai créer un calendrier sous excel mais comment repérer une date de ce calendrier pour ensuite travailler sur Visual Basic Application?
Merci
Sabrina
A voir également:

8 réponses

michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
bonjour,

bin...

si la date est dans une cellule, tu écris par exemple

madate et madatemodifiée sont des variables

madate=range("B6")

et si transformation
range("B6")=madatemodifiée
0
Sabrina81 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
En fait, sur ma feuille excel, le calendrier peut être modifié en permanence selon le mois et l'année...
Dans VBA, j'ai crée un Userform ou j'ai mis une zone de texte "date"
Je voudrais que le contenu de mon userform soit écrit à la bonne date de mon calendrier...Je sais pas si c'est faisable
Merci d'avance
0
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
Comment est changée ta date sur la feuillle ?

Si le changement se fait par saisie ou si l'origine du changement vient d'ailleurs que de la feuille où tu as la date, cela ne pose pas trop de pb; sinon indique ce qui fait le changement.

petite piste qqsoit l'origine: il faut mettre la propriété "showmodal" de ton userform à "false"
0
Sabrina81 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Le calendrier sur la feuille excel se modifie par une liste...donc chaque fois que je change le mois ou l'année....le calendrier se modifie...
0

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

Posez votre question
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
et cette liste se trouve où?

petites explications (rappel: propriété showmodal à false)

Ton userform étant lancé; par exemple:

Private Sub UserForm_Initialize()
Me.TextBox1 = Range("D6")
End Sub

on pourrait écrire une événementielle dans ta feuille:

Private Sub Worksheet_Change(ByVal Target As Range)
Unload UserForm1
UserForm1.Show
End Sub

Or, tel quel, chaque fois que tu modifieras une cellule dans ta feuille, l'événementielle sera lancée...

C'est donc l'origine du changement qui va déclencher

Si ta liste est mettons en A1:A10 sur la m^me feuille
on aura:

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A1:A10")) Is Nothing Then: Exit Sub
Unload UserForm1
UserForm1.Show
End Sub

si l'origine du changement est ailleurs on aura, si la date est en D16:

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("D16")) Is Nothing Then: Exit Sub
Unload UserForm1
UserForm1.Show
End Sub
0
Sabrina81 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
J'ai du mal à saisir...Est-il possible d'échanger adresse msn ou mail pour communiquer?
merci
0
Sabrina81 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Comme ça je peux vous envoyer le début de mon travail et vous indiquer ou je coince....
Merci d'avance......
0
upper Messages postés 7 Statut Membre
 
la force de l'esprit c'est l'action.
0