Corriger une macro
Fermé
kawtdanne
Messages postés
11
Date d'inscription
mardi 7 mai 2013
Statut
Membre
Dernière intervention
19 juillet 2013
-
19 juil. 2013 à 14:49
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 19 juil. 2013 à 15:41
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 19 juil. 2013 à 15:41
A voir également:
- Corriger une macro
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Macro word - Guide
- Comment corriger l'erreur 0x80070643 ? - Guide
- Macro logiciel - Télécharger - Organisation
- Macro recorder - Télécharger - Confidentialité
2 réponses
Morgothal
Messages postés
1236
Date d'inscription
jeudi 22 avril 2010
Statut
Membre
Dernière intervention
19 mai 2015
183
19 juil. 2013 à 15:33
19 juil. 2013 à 15:33
Salut
Comme ça, je dirais qu'il manque un .value à cette ligne :
If CELL.Value >= Range("A_Debut").Value Or CELL.Value <= Range("A_Fin").Value Then
Peut -être est-ce autre chose ...
Comme ça, je dirais qu'il manque un .value à cette ligne :
If CELL.Value >= Range("A_Debut").Value Or CELL.Value <= Range("A_Fin").Value Then
Peut -être est-ce autre chose ...
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 306
Modifié par michel_m le 19/07/2013 à 15:42
Modifié par michel_m le 19/07/2013 à 15:42
Bonjour
peut-^tre
Tu as créé sagement un bloc
With Worksheets("Feuil2")
End With
il faut alors que tous les objets cells et/ou range marquent leur appartenance à ce bloc par un point
tu n'as pas besoin d'écrire Sheets("Feuil2").Select puisque tu es dans le bloc
"feuil2"
le ".select" est mis à le fin de ta macro si tu veux que l'utisateur voit le résultat
Pendant que j'y suis
en début de macro utilise cette instruction
Application.screenupdating=False
qui évitera les sautes d'écran accélère l'éxécution de 80%
Pourquoi une boucle puisque tu utilises xlfilldefaut ?
Michel
peut-^tre
Tu as créé sagement un bloc
With Worksheets("Feuil2")
End With
il faut alors que tous les objets cells et/ou range marquent leur appartenance à ce bloc par un point
With Worksheets("Feuil2") Dim I As Long I = .Range("A" & Rows.Count).End(xlUp).Row For Each CELL In .Range("C2:C" & .Range("C" & Rows.Count).End(xlUp).Row) If CELL.Value >= .Range("A_Debut") Or .CELL.Value <= .Range("A_Fin").Value Then .Range("B2").Formula = "=SUMPRODUCT((Feuil1!C[-1]=Feuil2!RC[-1])*(Feuil1!C[2]=1))" .Range("B2").AutoFill Destination:=.Range("B2:B" & I), Type:=xlFillDefaul End If Next CELL .Select End With
tu n'as pas besoin d'écrire Sheets("Feuil2").Select puisque tu es dans le bloc
"feuil2"
le ".select" est mis à le fin de ta macro si tu veux que l'utisateur voit le résultat
Pendant que j'y suis
en début de macro utilise cette instruction
Application.screenupdating=False
qui évitera les sautes d'écran accélère l'éxécution de 80%
Pourquoi une boucle puisque tu utilises xlfilldefaut ?
Michel