Problème ma macro change
Résolu/Fermé
viret1290
Messages postés
141
Date d'inscription
samedi 17 août 2013
Statut
Membre
Dernière intervention
28 juillet 2024
-
5 avril 2016 à 07:23
viret1290 Messages postés 141 Date d'inscription samedi 17 août 2013 Statut Membre Dernière intervention 28 juillet 2024 - 6 avril 2016 à 14:25
viret1290 Messages postés 141 Date d'inscription samedi 17 août 2013 Statut Membre Dernière intervention 28 juillet 2024 - 6 avril 2016 à 14:25
A voir également:
- Problème ma macro change
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Macro word - Guide
- Change dns - Guide
- Macro logiciel - Télécharger - Organisation
- Jitbit macro recorder - Télécharger - Confidentialité
4 réponses
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
5 avril 2016 à 08:49
5 avril 2016 à 08:49
Bonjour
déjà pour éviter la trop longue liste de if cells(2,6), restons simple
Si oui la valeur dans F2 est elle une saisie ou le résultat d'une formule dans F2 ?
déjà pour éviter la trop longue liste de if cells(2,6), restons simple
If range("F2")>0 then: a=(range("F2")-1)*3 +18et on supose que la valeur qui change est bien F2 ?
Si oui la valeur dans F2 est elle une saisie ou le résultat d'une formule dans F2 ?
viret1290
Messages postés
141
Date d'inscription
samedi 17 août 2013
Statut
Membre
Dernière intervention
28 juillet 2024
2
5 avril 2016 à 10:58
5 avril 2016 à 10:58
C'est une saisie
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
5 avril 2016 à 11:43
5 avril 2016 à 11:43
Il semble y avoir des incohérences comme
Cells(i, 70) = Cells(i, 70) + 1
puis + loin
If Cells(i, 70) <> "" Or Cells(i + 1, 70) <> ""
cells(i,70) a pour valeur mini 1 et donc le
If Cells(i, 70) <> "" Or Cells(i + 1, 70) <> ""
est toujours Vrai
????
je me trompe ou pas ?
Cells(i, 70) = Cells(i, 70) + 1
puis + loin
If Cells(i, 70) <> "" Or Cells(i + 1, 70) <> ""
cells(i,70) a pour valeur mini 1 et donc le
If Cells(i, 70) <> "" Or Cells(i + 1, 70) <> ""
est toujours Vrai
????
je me trompe ou pas ?
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
5 avril 2016 à 15:10
5 avril 2016 à 15:10
re,
sans réponse et en attendant
a copier dans le module feuille concernée (par ex feuil1(feuil1)
sans réponse et en attendant
a copier dans le module feuille concernée (par ex feuil1(feuil1)
Option Explicit
'-------------
Private Sub Worksheet_Change(ByVal Target As Range)
Static Flag As Boolean
Dim Derlig As Byte
Dim Zone As Range, Cellule As Range
Dim Nbre As Integer, Cptr As Integer, Col As Byte, Lig As Byte
If Target.Address = "$B$6" And Flag = False Then
Flag = True
ActiveSheet.Unprotect
If Target > 0 Then
Application.ScreenUpdating = False
Derlig = (Target - 1) * 3 + 18
'---------nettoyage
'Efface les totaux par détenus
Columns("BR").ClearContents
'Efface les totaux par jours
Range("K20:AO98").ClearContents
Range("AP8:AP96").ClearContents
'--------------comptage
' zone de recherche
Set Zone = ActiveSheet.Range(Cells(8, "K"), Cells(Derlig, "AO"))
Nbre = Application.CountIf(Zone, "X")
'recherche des "X" dans la zone
With Zone
Set Cellule = Zone.Find(what:="X", LookIn:=xlValues)
For Cptr = 1 To Nbre
Col = Cellule.Column
Lig = Cellule.Row
'comptage jours
Cells(Derlig + 2, Col) = Cells(Derlig + 2, Col) + 1
Cells(Lig, "BR") = Cells(Lig, "BR") + 1
'comptage détenus
Cells(Lig, "AP") = Cells(Lig, "BR") + Cells(Lig + 1, "BR")
Set Cellule = .FindNext(Cellule)
Next
End With
For Lig = 8 To Derlig
If Cells(Lig, "F") <> "" Then Cells(Lig + 2, "AP").Font.ThemeColor = xlThemeColorDark1
Next
ActiveSheet.Protect
End If
Flag = False
End If
End Sub
viret1290
Messages postés
141
Date d'inscription
samedi 17 août 2013
Statut
Membre
Dernière intervention
28 juillet 2024
2
6 avril 2016 à 14:25
6 avril 2016 à 14:25
Désolé, mais je n'avais pas de connexion internet.
Je ne sais pas pourquoi, mais sans rien faire ça fonctionne.
Merci énormément et désolé.
Je ne sais pas pourquoi, mais sans rien faire ça fonctionne.
Merci énormément et désolé.