un blocage inexpliqué

Le
Frédo P
Bonsoir toutes et ts
J'aimerais bien savoir pourquoi cette petite routine s'arrète à un moment
bien
précis.
Sur la plage K2:L235 colonne L: il n'y a que des lettres uniques par
cellules, elles sont celles ci :a,d,e,f,h,i,r,s,t.(un exemple tout en bas)
Des plages à gauche de K2:L235 ont été nommées de ces mêmes lettres et la
routine ci dessous bug à "r" quelque soit la longueur de la liste.
Public Sub tri()
Dim der&, col As Byte, fr$, c As Object
Sheets("Feuil1").[A2:J200].ClearContents
For Each c In Sheets("Feuil1").Range("L2:L235")
der = Sheets("feuil1").Range(c).SpecialCells(xlCellTypeBlanks).Row
Range(c)(der) = c.Offset(0, -1)
Next c
End Sub
J'ai contourné le pb avec ceci: il y a, j'en doute pas, sûrement mieux.
Public Sub tri()
Dim der&, col As Byte, fr$, c As Object
Sheets("Feuil1").[A2:J200].ClearContents
For Each c In Sheets("Feuil1").Range("L2:L235")
fr = LCase(c)
col = Switch(fr = "a", 4, fr = "d", 8, fr = "f", 2, fr = "h", 1, fr =
"e", 3, fr = "r", 5, fr = "i", 6, fr = "s", 7, fr = "t", 9)
Der = Sheets("Feuil1").Range((Cells(65536, col).Address)).End(xlUp).Row
Sheets("Feuil1").Cells(Der + 1, col) = c.Offset(0, -1)
Next c
end sub
La liste en col.K et plus bas la liste en col.L correspondant au produits.
AMMO 27%
AMMO 34%
SOL 30%
SOL SOUFREE 21%
AGRAL
Anti-Mousse
ELTON
FILM LABEL 348 M2
SULF DE MGO 26%
SULF. DE POTASSE
SUPER TRIPLE
Vinasse
Acanto
ACYLON TC
ALTO BS PEPITE
Amistar
STARANE
STEMAT 200
TARGA D+
VENZAR
ZEPPLIN
AZTEC
CARBOFURAN
CURATER
DECIS CE
ENDURO
CYCOCEL C3
ETEPHON
ETHEVERSE
MODDUS
a
A
A
A
D
D
D
D
E
E
E
E
F
F
F
F
H
H
H
H
H
I
I
I
I
I
R
R
R
R
  • Partager ce contenu :
Vos réponses
Trier par : date / pertinence
JpPradier
Le #1912175
Bonsoir Frédo

Ta version d'excel ne serait pas une version anglaise ?

j-p
Frédo P
Le #1912159
Non non bien french de chez nous
Je subodore une confusion en excel interne, avec les dénomination de
colonnes ,l'erreur vient peut être ,je dirais même sûrement, du fait qu'une
seule lettre est employée pour nommer une plage ce qui, pour moi, était bien
pratique, j'aurrais du, l'idée m'est venu cette nuit, employer des chiffres,
comme la plage sur laquelle j'utilise cette routine n'est pas directement
créer par l'opérateur mais par vba à partir d'une autre feuille de saisie.

"JpPradier" de news: #
Bonsoir Frédo

Ta version d'excel ne serait pas une version anglaise ?

j-p



JpPradier
Le #1912158
Bonjour Frédo

C'est ce que j'allais te dire : R pour row. Je crois que tu aurais eu le meme probleme avec le c
pour column et peut-etre le L pour ligne.

j-p
Poster une réponse
Anonyme