Autres une Function doit elle être dans un module ?

Macpoy

XLDnaute Impliqué
bonjour le forum, j'ai 2 Function que Pierre-Jean m'a donné il y a quelques années, pour le moment elles sont placées dans un module, et j'ai beaucoup de Sub qui passent par ces function sans que cela soit utile (perte de temps de réaction de la sub !) . puis je faire intervenir ces function avant la fermeture du classeur ?

Function fin_mois(LaDate)
If Month(LaDate) = 12 Then
m = "01"
y = Year(LaDate) + 1
Else
m = Month(LaDate) + 1
y = Year(LaDate)
End If
fin_mois = CDate("01/" & m & "/" & y) - 1
End Function

Function dernier_jour_ouvre(LaDate) ' sans travail ni dimanche ni lundi
For n = fin_mois(LaDate) To fin_mois(LaDate) - 7 Step -1
If Weekday(n) <> 1 And Weekday(n) <> 2 Then
dernier_jour_ouvre = n
Exit For
End If
Next
End Function

merci d'avance de vous pencher sur ce petit problème.
 

soan

XLDnaute Barbatruc
Inactif
Bonsoir,

c'est pas d'chance ! c'est l'deuxième sujet de Macpoy qui finit
en queue d'poisson car le fichier est trop gros pour être joint
directement sur le forum ! 😭 (même si le fichier est zippé !)

y'a pas à dire, c'était quand même plus simple avant, quand
on pouvait déposer un fichier sur un site de partage de
fichiers ! (nostalgie, quand tu nous tiens ! 😜)


soan
 

Staple1600

XLDnaute Barbatruc
Re

[avis personnel]
Un fichier exemple digne de ce nom sera toujours joignable sur le forum.
Il suffit juste de le savoir ;)
1) On ne joint jamais le fichier original
2) On créé un classeur ex nihilo
(qui peut être vide de datas, car comme... tu le sais, soan ;), on peut créer les données de test par code)
3) Donc un fichier vide (sans images, sans bordures etc..) avec une seule feuille (vide ou pas selon les cas) et surtout le code VBA.
a) celui qui créé l'exemple
b) le code VBA problématique.
[/avis personnel]
 

Macpoy

XLDnaute Impliqué
Re

=>Macpoy
Tu peux compresser ton classeur (le zipper)
et joindre le fichier zip obtenu.


Re

[avis personnel]
Un fichier exemple digne de ce nom sera toujours joignable sur le forum.
Il suffit juste de le savoir ;)
1) On ne joint jamais le fichier original
2) On créé un classeur ex nihilo
(qui peut être vide de datas, car comme... tu le sais, soan ;), on peut créer les données de test par code)
3) Donc un fichier vide (sans images, sans bordures etc..) avec une seule feuille (vide ou pas selon les cas) et surtout le code VBA.
a) celui qui créé l'exemple
b) le code VBA problématique.
[/avis personnel]
merci pour toutes tes recommandations, mais il arrive un moment ou, pour être cohérent et compréhensible, un classeur ne peut être réduit à une feuille et une macro.
mais je vais tenter de faire plus simple.
 

Macpoy

XLDnaute Impliqué
Bonsoir,

c'est pas d'chance ! c'est l'deuxième sujet de Macpoy qui finit
en queue d'poisson car le fichier est trop gros pour être joint
directement sur le forum ! 😭 (même si le fichier est zippé !)

y'a pas à dire, c'était quand même plus simple avant, quand
on pouvait déposer un fichier sur un site de partage de
fichiers ! (nostalgie, quand tu nous tiens ! 😜)


soan
il reste peut être la solution de le mettre en partage et téléchargement sur le site, même s'il n'est pas parfait il m'a déjà bien rendu service !!
 

soan

XLDnaute Barbatruc
Inactif
@Macpoy

tu as écrit : « il reste peut-être la solution de le mettre en partage et
téléchargement sur le site »

oui, mais malheureusement, la charte a été modifiée, et c'est devenu
interdit de joindre un fichier via un site de partage de fichiers ! 😭


soan
 

Staple1600

XLDnaute Barbatruc
Re

Ce n'est plus un problème.
On a levé le loup dans l'autre fil ;)

=>macpoy
Un problème peut se réduire à sa plus simple expression
Donc avec Excel, un fichier vide
(mais avec dans son projet VBA, tout ce qu'il faut pour récréer l'exemple qui pose problème et seulement celui-là.
Oui, cela peut largement suffire)

Demande à soan, il a peut-être encore dans son presse-papier le lien vers la discussion où dort ma Sub Anonymizator()
;)
 

dysorthographie

XLDnaute Accro
Bonsoir,
Une fonction c'est un peu comme une variable, mais une variable intelligente car elle exécute un code.

On peut lui passer de paramétrer comme la fonction dernier_jour_ouvre(LaDate)!

Une fonction n'a pas d'intérêt si elle n'est pas appelé d'une procédure {Sub}

On ne pourra pas te venir en aide si tu n'es pas plus explicite !
 

Macpoy

XLDnaute Impliqué
bonjour à tous,
après avoir regardé d'un peu plus près ce problème de function (qui cherche la date du jour et du mois), ces function sont "appelées" chaque fois que la sub passe par une feuille qui possède une date !!
le but du post était de ne faire agir ces funtion qu'avant la fermeture du classeur mais pas à tout bout de champs dans l'utilisation du classeur.
 

Discussions similaires

Statistiques des forums

Discussions
312 203
Messages
2 086 183
Membres
103 152
dernier inscrit
Karibu