• Initiateur de la discussion Initiateur de la discussion frans
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

F

frans

Guest
Bonjour à tous,
Voilà, je cherche à programmer une petite procédure, qui à partir d'une feuille, me donnerai le numéro de ligne de la dernière cellule d'une autre page.
Voilà comment je m'y suis pris :

Function derligne(feuille, nderligne)
'Dim nderligne As Integer
'Dim feuille As String
Sheets(feuille).Activate
Sheets(feuille).Range("A1").Select
On Error GoTo fin
nderligne = Cells.Find("*", [A1], , , 1, 2).Row
'Sheets(feuille).Deactivate
Sheets("interface").Activate
fin:
nderligne = 1
End Function

Ca marche, mais le seul problème c'est que je suis obligé d'activer la feuille cible, puis de réactiver la feuille que j'utilise comme interface.
Cela se traduit pas un clignotement de cette feuille interface.

Peut on faire autrement ? Sans devoir activer la feuille cible?
Je débute sur VBA, tous les conseils sont les bienvenus.

Merci d'avance

François
 
Salut au Forum,

François,

l'instruction suivante dans le private module de ta feuille1 (interface pour toi):
sheets(1).Range("a5").Value = Sheets(2).Range("a65536").End(xlUp).Row

inscrit en A5 de ta 1ère feuille sans clignotement le numéro de la dernière ligne utilisée sur la 2ème feuille de ton classeur actif.

Voir si ça peut t'aider...
@+Steplof
 
Steplof,
Merci, ça aide !

Sur la petite application que j'essaye de développer, j'utilise une feuille comme interface et d'autres feuilles comme sources de données. Les données de ces feuilles peuvent être copiées sur d'autres, supprimées, rajoutées...
Jusqu'à présent, à part ta solution, je n'ai réussi à me débarasser de ce clignotement. (dû au fait qu'il faille activer la feuille cible avant d'y effectuer des opérations (collage, suppression...)puis réactiver ma feuille d'interface)

Je pense que je m'y prend mal. En règle générale, je programme les fonctions dans le code source de ma feuille interface. Est ce qu'en les programmant dans un module j'aurais plus de chance ?


Merci
François
 
Re

pour supprimer le clignotement tu peux tout simplement en début de ta function mettre l'instruction

application.screenupdating=false

et en fin

application.screenupdating=true

peut être ça t'aidera encore un peu...

Steplof
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
2
Affichages
763
Retour