Plage de données

Limlight Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   -  
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je souhaiterais effacer une plage de données voici mon code :
Sub Effacer()
Worksheets("Feuil1").Activate

Dim maPlage As Range
Dim DernLigne As Long
Dim DernCol As Long

DernLigne = Range("A" & Rows.Count).End(xlUp).Row
DernCol = Cells(1, Columns.Count).End(xlToRight).Column
Set maPlage = Range("A5:" & DernCol & DernLigne)
maPlage.ClearContents
maPlage.ClearFormats
End Sub

Même chose pour sélectionner une plage et faire un quadrillage.

JE voudrais aussi mettre des filtres uniquement sur ma ligne 5 de la colonne 1 à N (variable).

Merci de m'indiquer comment faire.

Cordialement.

2 réponses

ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Bonjour

Sub Effacer()
Dim maPlage As Range
Dim DernLigne As Long
Dim DernCol As Long
With Worksheets("Feuil1")
  DernLigne = .Range("A" & Rows.Count).End(xlUp).Row
  DernCol = .Cells(1, Columns.Count).End(xlToRight).Column
  If DernLigne < 5 Then DernLigne = 5
  Set maPlage = .Range(.Cells(5, 1), .Cells(DernLigne, DernCol))
  maPlage.ClearContents
  maPlage.ClearFormats
End With
End Sub

Sub Quadriller()
Dim maPlage As Range
With Worksheets("Feuil1")
  Set maPlage = .Range(.Cells(5, 5), .Cells(10, 10))
  maPlage.Borders.LineStyle = xlContinuous
End With
End Sub

Sub Filtre()
Dim n As Long
Dim maPlage As Range
n = 5
With Worksheets("Feuil1")
  Set maPlage = .Range(.Cells(5, 1), .Cells(5, n))
  maPlage.AutoFilter
End With
End Sub

Cdlmnt
0
Limlight Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
Merci mais je ne parviens pas à faire fonctionner la fonction effacer ni quadriller car mon nombre de colonne et de ligne sont variable.
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Tu remplaces les constantes (N° de lignes et de colonnes) par tes variables
ex
.Cells(5, 1) à remplacer par .cells(li,co)
li et co seront bien entendu initialisée avant, mais là, ça va dépendre de ce que tu veux faire
0