EXCEL VBA

Curly -  
 curly -
Bonjour,

je suis archi débutante en VBA et j'ai à écrire une fonction personnalisée en VBA qui indique le jour de la semaine en texte (lundi, mardi...) à partir d'une date. J'ai trouvé une fonction (la fonction weekday ) qui me permet de d'indiquer le jour de la semaine mais sous forme de chiffre (soit de 1 à 7 puisqu'il s'agit des jours de la semaine).
Je ne sais pas du tout comment remplacer ces chiffres par du texte. Quelqu'un peut-il m'aider ???
Je vous remercie par avance.
Salutations

8 réponses

kaphil Messages postés 41 Date d'inscription   Statut Membre Dernière intervention   1
 
* Si tu veux simplement avoir le jour de la semaine dans une cellule, il suffit d'en changer le format :
ex valeur -> =Aujourdhui() et format "personnalisé" -> jjjj

* Mais si tu as vraiment besoin de le récupérer en VB il doit exister une fonction sinon tu peux en construire une simple à l'aide de
WeekDay et Select ... Case
ex:
Select Case DateDuJour
Case 1: JourSem = "Lundi"
Case 2: JourSem = "Mardi"
Case ....
Case 7: JourSem = "Jour du saigneur !"
Case else: jourSem = " Date invalide !"
End Select
N'oublie pas d'initialiser tes variables.

Bisous
0
curly
 
Merci bcp pour tes conseils !!
J'ai un autre pb... tu as l'air de plutôt t'y connaître, alors j'en profite!
Cette fois-ci, je dois créer une feuille Excel utilisant une fonction personnalisée en VBA qui renvoie le signe du zodiaque quand on lui passe en paramètre une date.
Merci d'avance si jamais tu as une solution.
Salut !!

Curly
0
kaphil Messages postés 41 Date d'inscription   Statut Membre Dernière intervention   1
 
* Si tu veux simplement avoir le jour de la semaine dans une cellule, il suffit d'en changer le format :
ex valeur -> =Aujourdhui() et format "personnalisé" -> jjjj

* Mais si tu as vraiment besoin de le récupérer en VB il doit exister une fonction sinon tu peux en construire une simple à l'aide de
WeekDay et Select ... Case
ex:
Select Case DateDuJour
Case 1: JourSem = "Lundi"
Case 2: JourSem = "Mardi"
Case ....
Case 7: JourSem = "Jour du saigneur !"
Case else: jourSem = " Date invalide !"
End Select
N'oublie pas d'initialiser tes variables.

Bisous
0
gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   4 724
 
bonjour

la fonction n'est pas native dans excel à ma connaissance,
mais si tu combine ta fonction weekday avec choose cela donne :

=CHOOSE(WEEKDAY(date-choix;2),""lundi"",""mardi"",""mercredi"",""jeudi"",etc)"

et tu obtiens un jour en clair.

tu peux aussi mettre ta liste dans une plage si tu l'utilise souvent.

0
matt
 
Salu a tous

petite question bete :

comment fait on pour exclure un caractere de l interpretation ? en vb

en langage c , je sais que c "\"

si quelqu un sait ?
je suis preneur merci!!!!

++
matt
0

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

Posez votre question
gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   4 724
 
bonjour

comment fait on pour exclure un caractere de l interpretation ? en vb


je suppose que c'est pour introduire un commentaire

et pour cela c'est <'> l'apostrophe, soit le 4 première rangée.

0
matt
 
Bonjour merci pour ta reponse

Mais en fait nan cété po sa que je recherchai !!!!
En fait ce qu il me faut c un caractere qui ne va pas etre interprété dans la chaines de caractere comme une commande !!!

Du style :

Shell "cmd /c netsh interface ip set address "Connexion au réseau local" static 192.168.0.1 255.255.255.0 192.168.0.254 1 "


Le pb ici c que le " avant connexion ferme la commande alors que moi je veut qu il fasse parti de la commande ...


Merki si quelqu un trouve !!!
0
Ravachol Messages postés 566 Date d'inscription   Statut Membre Dernière intervention   120
 
Salut,
Essaye en doublant le " comme ceci:
Shell "cmd /c netsh interface ip set address ""Connexion au réseau local"" static 192.168.0.1 255.255.255.0 192.168.0.254 1 " 


A++
0
gbinforme Messages postés 14946 Date d'inscription   Statut Contributeur Dernière intervention   4 724
 
bonjour

dans ce cas là, tu mets


Shell "cmd /c netsh interface ip set address " & chr(34) & "Connexion au réseau local" & chr(34) & "static 192.168.0.1 255.255.255.0 192.168.0.254 1 "

0
matt
 
Salu

Un enorme merci pour votre réponse !!!
Vous avez résolu mon problème

J' ai réussi avec les doubles guillemets !!!

Mais approfondir je vais tenter avec le & chr(34) & ...
chr(34) sa fait reference au caracteres ascii???


Enfin en tt k merci bocouuup !!!!

@++
matt
0