Optimisation de macro
Résolu
pyrus2047
Messages postés
153
Date d'inscription
Statut
Membre
Dernière intervention
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
A voir également:
- Optimisation de macro
- Optimisation pc - Accueil - Utilitaires
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Optimisation découpe panneau gratuit - Télécharger - Outils professionnels
- Jitbit macro recorder - Télécharger - Confidentialité
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
3 réponses
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
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
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
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
merci beaucoup
j'ai un autre dysfonctionnement avec cette macro
Explications disponibles ici :ICI
Merci d'y penser dans tes prochains messages.Jordane45
Merci
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
- ....
Nb: ne mets pas de caractères accentués dans le nom de tes variables
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