utilisation de variable

Stabilo

XLDnaute Nouveau
J'ai cherché une réponse dans le forum... mais je m'y suis perdu !

Mon problème. Je dois traiter des tableaux de largeur fixe mais de longueur
variable. Typiquement entre 500 et 2500 lignes.
j'ai écris une macro.Dans un premier temps j'ai résolue la difficulté en surdimensionnent le nombre de lignes. Ça fonctionne. Mais évidement pas de façon parfaite, les lignes en surnombre se trouvent après traitement légitimement affublées de divisions par zéro. Ce qui est ennuyeux pour un trie qui s'effectue justement sur la colonne en question. :(

J'ai essayé de déterminer la dernière lignes que contient le tableau que je met dans une variable "der".
Mais quand j'essaie d'utiliser celle ci, j'obtiens une "erreur d’exécution 1004" erreur définie par l'application ou par l'objet.

Soit ma variable "der" ne contient pas ce que je crois, et comment obtenir la dernière ligne, soit j'emploie mal cette variable: Range("A1:V der").?

Ci dessous ce que j'ai tenté, si quelqu'un peut m'éclairer

La feuille contient un précédent tableau qui est effacé et le nouveau et collé.

Sub TriTag()
'
' TriTag Macro
' Trie parametres TwistAG
'
' Touche de raccourci du clavier: Ctrl+t
'
'Range("A1:V3500").Select
'Selection.ClearContents
Dim der As Long
der = Range("A1").End(xlDown).Row
Worksheets("Feuil1").Range("A1:V3500").ClearContents
'Worksheets("Feuil1").Range("A1:V der").ClearContents
Range("A1").Select
ActiveSheet.Paste
der = Range("A1").End(xlDown).Row
'Range("H1:Hder").FormulaR1C1 = "=RC[-2]/RC[-6]"
Range("H1:H3500").FormulaR1C1 = "=RC[-2]/RC[-6]"
'Range("H1:H3500").FormulaR1C1 = "=10*RC[-6]/RC[-2]"
'Worksheets("Feuil1").Range("H1:H3500").FormulaR1C1 = "=RC[-2]/RC[-6]"
Columns("H:H").Select
ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Add Key:=Range("H1"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
'SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Feuil1").Sort
.SetRange Range("A1:V3500")
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("A1").Select
End Sub
 

Discussions similaires

Réponses
11
Affichages
439
Réponses
3
Affichages
591

Statistiques des forums

Discussions
312 304
Messages
2 087 062
Membres
103 449
dernier inscrit
pulco41