OVH Cloud OVH Cloud

Date en VBA

4 réponses
Avatar
John Fuss
Bonjour,

je receptionne un fichier, d'après sa date de création (récupérée avec FSO)
je dois retrouver le numéro de la semaine passée (révolue) ainsi que le ou
les mois de cette dite semaine révolue.

J'espère avec été clair.

Merci d'avance.

John

4 réponses

Avatar
AV
je receptionne un fichier, d'après sa date de création (récupérée avec FSO)
je dois retrouver le numéro de la semaine passée (révolue) ainsi que le ou
les mois de cette dite semaine révolue.


laDate = DateSerial(2003, 10, 27)'ou autre chose
MsgBox DatePart("ww", laDate - 7, 2, 2) ' la semaine avant
MsgBox Month(laDate - 7) ' le mois de la semaine avant

AV

Avatar
Pascal
Bonjour à tous
Comment fait-on pour que 6 macros ne s'éxécute que sur une seule plage? Là
il s'agit de ("D6:D36")
Une de mes Macros est:

Sub Macro2()
Range("PRESBUR").Copy
ActiveCell.Select
ActiveSheet.Paste
End Sub

Je m'explique, je sélectionne une cellule uniquement dans ("D6:D36") par
exemple D7 je Clicke sur un bouton et cela recopie par exemple la Cellule
PRESBUR en D7
Mais je ne veux pas que cette macro s'éxécute si je suis sur une autre Range
que D6:D36
Dernièr point sur D6:D37, j'ai le choix entre 6 macros différentes et je ne
sais pas comment après un private sub comment je fais pour les imbriquer
les unes aux autres.

Pascal


"AV" a écrit dans le message de news:
#
je receptionne un fichier, d'après sa date de création (récupérée avec
FSO)


je dois retrouver le numéro de la semaine passée (révolue) ainsi que le
ou


les mois de cette dite semaine révolue.


laDate = DateSerial(2003, 10, 27)'ou autre chose
MsgBox DatePart("ww", laDate - 7, 2, 2) ' la semaine avant
MsgBox Month(laDate - 7) ' le mois de la semaine avant

AV





Avatar
John Fuss
Merci bcp ! ça fonctionne

John

"AV" a écrit dans le message de
news:%
je receptionne un fichier, d'après sa date de création (récupérée avec
FSO)


je dois retrouver le numéro de la semaine passée (révolue) ainsi que le
ou


les mois de cette dite semaine révolue.


laDate = DateSerial(2003, 10, 27)'ou autre chose
MsgBox DatePart("ww", laDate - 7, 2, 2) ' la semaine avant
MsgBox Month(laDate - 7) ' le mois de la semaine avant

AV





Avatar
AV
Sub zz_Intersect()
Set X = ActiveCell
If Intersect(X, [D6:D36]) Is Nothing Then
alert = MsgBox("Sélection prélable d'une cellule" _
& vbLf & "de la plage D6:D36 !", vbInformation + vbOKOnly, "")
Exit Sub
End If
'ici tu peux appeler tes macros en fonction
'de la cellule sélectionnée ou bien de leur contenu ???
'Ou encore utiliser un Select Case ou
'une série de if ..then
'Exemple :
'if X.value = ?? then
'if X.value = ?? then
'etc.......
End Sub

AV

"Pascal" a écrit dans le message news:
#ne3#
Bonjour à tous
Comment fait-on pour que 6 macros ne s'éxécute que sur une seule plage? Là
il s'agit de ("D6:D36")
Une de mes Macros est:

Sub Macro2()
Range("PRESBUR").Copy
ActiveCell.Select
ActiveSheet.Paste
End Sub

Je m'explique, je sélectionne une cellule uniquement dans ("D6:D36") par
exemple D7 je Clicke sur un bouton et cela recopie par exemple la Cellule
PRESBUR en D7
Mais je ne veux pas que cette macro s'éxécute si je suis sur une autre Range
que D6:D36
Dernièr point sur D6:D37, j'ai le choix entre 6 macros différentes et je ne
sais pas comment après un private sub comment je fais pour les imbriquer
les unes aux autres.

Pascal


"AV" a écrit dans le message de news:
#
je receptionne un fichier, d'après sa date de création (récupérée avec
FSO)


je dois retrouver le numéro de la semaine passée (révolue) ainsi que le
ou


les mois de cette dite semaine révolue.


laDate = DateSerial(2003, 10, 27)'ou autre chose
MsgBox DatePart("ww", laDate - 7, 2, 2) ' la semaine avant
MsgBox Month(laDate - 7) ' le mois de la semaine avant

AV