Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

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
486
Réponses
3
Affichages
606
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…