XL 2013 Copier Coller qui mouline à cause d'une fonction VBA

Adrien47

XLDnaute Nouveau
Bonjour à tous.

Je rencontre un soucis sur l'utilisation d'un document dans lequel j'ai créer deux fonctions. Sur ma feuille ces deux fonctions sont utilisées. Lorsque je fait un copier-coller d'une case quelconque, Excel mouline 10s. Si je fait Echap à ce moment là je retombe sur une de ces deux fameuses fonctions (qui doivent tourner en boucle).

Quelqu'un aurait-il une idée ? ;)

Function Semaine(Date1 As Double)
'Renvoie la semaine d'une date au format ASS (jj/mm/aaaA > ASS)
Application.Volatile
Semaine = Mid(Year(Date1), 4, 1) * 100 + WorksheetFunction.WeekNum(Date1)
End Function

Function DiffSemaine(Semaine1, Semaine2 As Double)
'Renvoie le nombre de semaine entre deux date au format ASS - AS*S*
Application.Volatile
DiffSemaine = (Int(Semaine1 / 100) - Int(Semaine2 / 100)) * 52 + (Semaine1 Mod 100) - (Semaine2 Mod 100)
End Function
 

Victor21

XLDnaute Barbatruc
Re : Copier Coller qui mouline à cause d'une fonction VBA

Bonjour, Adrien47. Et bienvenue sur XLD.

Ah ! ces Application.Volatile !
Peut-être la grippe aviaire ?
Le fichier exemple aussi, il est volatile ?
Rappel
IMPORTANT : - ILLUSTREZ VOTRE DEMANDE : Afin de faciliter la compréhension de votre demande il est conseillé de joindre un PETIT fichier qui illustre votre question précise et montre les résultats que vous cherchez à obtenir.
Pour l'envoyer, cliquez sur le trombone ci-dessous ou sur le bouton "Gérer les pièces jointes" dans la zone "Options supplémentaires".Ensuite, cliquez sur le bouton "Parcourir" et sélectionnez-le (après l'avoir compressé s'il dépasse les 250Ko).
 

Adrien47

XLDnaute Nouveau
Re : Copier Coller qui mouline à cause d'une fonction VBA

Bonjour Victor21.

Oui, mille pardons j'aurais pu commencer par là.
En fabricant le fichier je m'aperçois que le nombre d'utilisation de la fonction impacte directement le temps de moulinette.

Résolution :
erreur n°1) Application.Volatile n'est pas compatible avec une utilisation intensive de la fonction sur la feuille de calcul. Sinon ca mouline lors d'un copier coller car recalcule chaque cellule.

erreur n°2) Modifier la fonction dans le programme VBA n'affecte pas la fonction (l'ajout de 'Application.Volatile dans la fonction du moins ne l'a pas rendu non volatile immédiatement). Il fallait sauvegarder!


Merci de m'avoir mis si bien sur la voie Victor21 ;).
 

Pièces jointes

  • Exemple CC.xlsm
    84.4 KB · Affichages: 39

Discussions similaires

Réponses
8
Affichages
707

Statistiques des forums

Discussions
312 764
Messages
2 091 869
Membres
105 084
dernier inscrit
lca.pertus