A voir également:
- Ecrire une chaine dans une cellule donnee
- Écrire plusieurs lignes dans une cellule excel mac - Guide
- Chaine tnt gratuite sur mobile - Guide
- Ecrire en gras sur whatsapp - Guide
- Bloquer une cellule excel - Guide
- Excel cellule couleur si condition texte - Guide
14 réponses
Bonjour,
Commence par vérifier si cette erreur n'est pas liée à la valeur de la variable dLi qui ne doit pas dépasser la valeur maximale pour un entier, à savoir 32767. Tu peux alors déclarer un type de variable Long à la place de Integer.
De plus, pour obtenir un affichage sur 2 chiffres, tu peux te contenter d'un format nombre personnalisé "00".
A+
Commence par vérifier si cette erreur n'est pas liée à la valeur de la variable dLi qui ne doit pas dépasser la valeur maximale pour un entier, à savoir 32767. Tu peux alors déclarer un type de variable Long à la place de Integer.
De plus, pour obtenir un affichage sur 2 chiffres, tu peux te contenter d'un format nombre personnalisé "00".
A+
Merci c'est deja beaucoup mieux en ce sens que mon tbx ne saute plus dans tous les sens des que la macro tourne.
J'ai d'autres erreurs qui du coup sont apparues :
Pour chaque partition une copie automatique ce fait par rapport au nombre d'instruments dans l'oeuvre et de mouvements. ( 2 instruments + 2 mouvements = 6 lignes)
* au moment du traitement je vois que toutes les precedentes saisies se recalculent suivant la nouvelle entree (je vois dans GM defiler 0 ou 1 ou 2)
* si j'ai trois partitions, les nombres de mouvements de la derniere partition entree modifient les precedentes, et dans ma colonne GM je retrouve a chaque ligne 2 (= 3 mouvements)
Petite info : pack office 2010 et mes debut en vba datent de janvier dernier.
J'ai d'autres erreurs qui du coup sont apparues :
Pour chaque partition une copie automatique ce fait par rapport au nombre d'instruments dans l'oeuvre et de mouvements. ( 2 instruments + 2 mouvements = 6 lignes)
* au moment du traitement je vois que toutes les precedentes saisies se recalculent suivant la nouvelle entree (je vois dans GM defiler 0 ou 1 ou 2)
* si j'ai trois partitions, les nombres de mouvements de la derniere partition entree modifient les precedentes, et dans ma colonne GM je retrouve a chaque ligne 2 (= 3 mouvements)
Petite info : pack office 2010 et mes debut en vba datent de janvier dernier.
Tu dis que c'est beaucoup mieux mais tu ne dis pas pour quelle solution tu as opté (adaptation du type de variable ou format personnalisé).
Concernant les autres erreurs, je ne vois pas comment nous pourrions t'aider sans un classeur pour exemple. Tel que tu décris le problème, tu dois avoir des formules qui font évoluer les valeurs ou des procédures évènementielles qui effectuent ces rafraîchissements.
A+
Concernant les autres erreurs, je ne vois pas comment nous pourrions t'aider sans un classeur pour exemple. Tel que tu décris le problème, tu dois avoir des formules qui font évoluer les valeurs ou des procédures évènementielles qui effectuent ces rafraîchissements.
A+
J'ai declare dLi As Long,
changer Index en As Byte et
determine un format personnalise
du coup je vois ces nouveaux grains de sable.
Le numero des mouvements de s'incremente pas au fur et a mesure des lignes et de plus modifie les precedentes.
Maintenant avec le code ci-dessous j'ai une erreur de type 1004 pour :
" If Application.WorksheetFunction.CountA(cel.Offset(-91, -136).Resize(1, 45)) <> 1"
#Private Sub Ref_Mvt_Count(Index As Byte)
Dim dLi As Long
Dim rPl As Range
Dim stMvt As String
With Sheets("WORKS_DATA")
dLi = .Cells(Application.Rows.Count, 2).End(xlUp).Row
Set rPl = .Range("GM2:GM" & dLi)
End With
If Index >= 10 Then
stMvt = CStr(Index + 1)
Else
stMvt = "0" & (Index + 1)
End If
For Each cel In rPl
If Application.WorksheetFunction.CountA(cel.Offset(-91, -136).Resize(1, 45)) <> 1 Then
cel.Value = "00"
Else
cel.Value = stMvt
End If
Next
End Sub#
changer Index en As Byte et
determine un format personnalise
du coup je vois ces nouveaux grains de sable.
Le numero des mouvements de s'incremente pas au fur et a mesure des lignes et de plus modifie les precedentes.
Maintenant avec le code ci-dessous j'ai une erreur de type 1004 pour :
" If Application.WorksheetFunction.CountA(cel.Offset(-91, -136).Resize(1, 45)) <> 1"
#Private Sub Ref_Mvt_Count(Index As Byte)
Dim dLi As Long
Dim rPl As Range
Dim stMvt As String
With Sheets("WORKS_DATA")
dLi = .Cells(Application.Rows.Count, 2).End(xlUp).Row
Set rPl = .Range("GM2:GM" & dLi)
End With
If Index >= 10 Then
stMvt = CStr(Index + 1)
Else
stMvt = "0" & (Index + 1)
End If
For Each cel In rPl
If Application.WorksheetFunction.CountA(cel.Offset(-91, -136).Resize(1, 45)) <> 1 Then
cel.Value = "00"
Else
cel.Value = stMvt
End If
Next
End Sub#
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
La première cellule de la plage rPl est GM2.
Si tu demande à définir une plage qui commence à la cellule GM2 décalée de -91 lignes, tu vas crever l'écran !
A+
Si tu demande à définir une plage qui commence à la cellule GM2 décalée de -91 lignes, tu vas crever l'écran !
A+
Les donnees se trouvent dans les colonnes BB a CU soit de -136 a -91 vers la gauche de la colonne GM2
J'ai du mal ecrire......
J'ai du mal ecrire......
La colonne BB est décalée de -141 colonnes par rapport à GM.
La colonne CU est décalée de -96 colonnes par rapport à GM.
A+
La colonne CU est décalée de -96 colonnes par rapport à GM.
A+
Je ne pense pas que l'on fait le même calcul :
BB correspond à la colonne 54
CU correspond à la colonne 99
GM correspond à la colonne 195
Décalage entre GM et BB : 54 - 195 = -141
Décalage entre GM et CU: 99- 195 = -96
Que dire de mieux ?
Ton code tout seul ne servira à rien.
C'est un classeur exemple qui sera utile pour comprendre la structure des données et la finalité du programme.
A+
BB correspond à la colonne 54
CU correspond à la colonne 99
GM correspond à la colonne 195
Décalage entre GM et BB : 54 - 195 = -141
Décalage entre GM et CU: 99- 195 = -96
Que dire de mieux ?
Ton code tout seul ne servira à rien.
C'est un classeur exemple qui sera utile pour comprendre la structure des données et la finalité du programme.
A+
Mille millions de mille sabord ca ne marche pas!!!!!!!!!
comment te faire parvenir mon classeur pour que tu vois un peu.....
comment te faire parvenir mon classeur pour que tu vois un peu.....