Optimisation de macro
Résolu/Fermé
pyrus2047
Messages postés
153
Date d'inscription
lundi 3 juillet 2017
Statut
Membre
Dernière intervention
22 mai 2023
-
24 déc. 2017 à 22:07
yg_be Messages postés 23342 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 21 novembre 2024 - 26 déc. 2017 à 10:52
yg_be Messages postés 23342 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 21 novembre 2024 - 26 déc. 2017 à 10:52
A voir également:
- Optimisation de macro
- Optimisation pc - Accueil - Utilitaires
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Macro word - Guide
- Optimisation découpe panneau gratuit - Télécharger - Outils professionnels
- Macro logiciel - Télécharger - Organisation
3 réponses
jordane45
Messages postés
38300
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
21 novembre 2024
4 704
25 déc. 2017 à 00:54
25 déc. 2017 à 00:54
Bonjour,
Un truc du genre :
Un truc du genre :
Sub ouest() Dim plageDate As Range Dim wkb As Workbook Dim sh As Worksheet Dim R As Integer Dim C As Range Set wkb = ThisWorkbook Set sh = wkb.ActiveSheet Set plageDate = sh.Range("A1:A39") For Each C In plageDate If Weekday(C.Value) = 2 Then R = C.Row sh.Cells(R, 2).Value = CInt(Format(C.Value, "ww", 2)) End If Next End Sub
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
25 déc. 2017 à 19:51
25 déc. 2017 à 19:51
Tu pose en dictat que la ligne est systématiquement trouvée !
Et si ce n'est pas le cas ???? (If celluletrouvee is Nothing then ... )
Et si ce n'est pas le cas ???? (If celluletrouvee is Nothing then ... )
yg_be
Messages postés
23342
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
21 novembre 2024
Ambassadeur
1 551
Modifié le 26 déc. 2017 à 10:54
Modifié le 26 déc. 2017 à 10:54
quand tu écris "j 'ai toujours cette ligne qui pose problème", reçois-tu un message d'erreur?
lequel?
suggestion:
lequel?
suggestion:
Dim numero As Integer Dim celluletrouvee As Range numero = Range("T1") Set celluletrouvee = Range("L2:L10").Find(numero) If not (celluletrouvee is Nothing) then ActiveWindow.ScrollRow = celluletrouvee.Row end if
Modifié le 25 déc. 2017 à 20:43
merci beaucoup
j'ai un autre dysfonctionnement avec cette macro
Explications disponibles ici :ICI
Merci d'y penser dans tes prochains messages.Jordane45
Merci
25 déc. 2017 à 18:59
Modifié le 25 déc. 2017 à 16:23
Pour éviter les problèmes, tu devrais t'inspirer très largement de la façon, dont Jordane écrit ses macros :
- Pas de Select inutile
- Pas de Range non référencé (i.e Range("T1") oui mais de quelle feuille ?)
- Pas de valeur explicite (i.e au lieu de Range("T1") écrire Range("T1").Value)
- Ne pas utiliser Selection
- ....
25 déc. 2017 à 19:04
Nb: ne mets pas de caractères accentués dans le nom de tes variables
25 déc. 2017 à 19:22
j'ai en T1 une liste déroulante de numéro 1,2,3,4........
en colonne L j'ai une suite de numéro identique a la liste déroulante
je souhaite qu'a la selection d'un numéro dans la liste déroulant
on le recherche dans la colonne L et que la ligne ou il se trouve remonte en haut
de la feuille
j 'ai toujours cette ligne qui pose problème
ligne = celluletrouvee.Row
Cordialement