effacement d'une partie d'une colonne

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

lagodille

XLDnaute Occasionnel
bonjour
j'ai la procedure suivante:
Sub simul()
Dim u As Integer
Application.ScreenUpdating = False
Sheets("Global").Select
For u = 5 To 44
If Sheets("Global").Cells(5, u).Value = "DFA" Then Sheets("Global").Cells(6, u).EntireColumn.ClearContents = True
Next u
Application.ScreenUpdating = True
End Sub

le probkème est que je voudrais effacer dans les colonnes qui contiennent "DFA" qu'une plage bien precise et non pas la colonne entière (entirecolumn).
En fait au dessus de la 6ème ligne je ne veux rien effacer.

y a t i l une solution?

merci
 
Re : effacement d'une partie d'une colonne

Bonsoir Lagodille

regarde peut être le code ci dessous :

Code:
Dim u As Integer
With Sheets("Global")
    For u = 5 To 44
        If .Cells(5, u).Value = "DFA" Then .Range(.Cells(6, u), .Cells(.Cells(65536, u).End(xlUp).Row, u)).ClearContents
    Next u
End With

Edition Bonsoir JB

bonne soirée
@+
 
Re : effacement d'une partie d'une colonne

Bonsoir Lagodille

regarde peut être le code ci dessous :

Code:
Dim u As Integer
With Sheets("Global")
    For u = 5 To 44
        If .Cells(5, u).Value = "DFA" Then .Range(.Cells(6, u), .Cells(.Cells(65536, u).End(xlUp).Row, u)).ClearContents
    Next u
End With

Edition Bonsoir JB

bonne soirée
@+


bonsoir
merci pour votre aide seulement pouvez vous m'expliquer ce qui est fait car je ne comprends pas tout. surtout sur le fait que je ne veux traiter les colonnes qu'a partir de la 6ème ligne
merci
 
Re : effacement d'une partie d'une colonne

Bonsoir Lagodille

regarde peut être le code ci dessous :

Code:
Dim u As Integer
With Sheets("Global")
    For u = 5 To 44
        If .Cells(5, u).Value = "DFA" Then .Range(.Cells(6, u), .Cells(.Cells(65536, u).End(xlUp).Row, u)).ClearContents
    Next u
End With

Edition Bonsoir JB

bonne soirée
@+

je n'arrive pas a le faire tourner il me mets incompatibilité de type sur le if
 
Re : effacement d'une partie d'une colonne

Bonsoir à tous


Teste sous XL 2000 sans message d'erreur

Code:
Sub simul_ii()
Dim u As Long
Application.ScreenUpdating = False
Sheets("Global").Activate
For u = 5 To 44
If Sheets("Global").Cells(5, u).Value = _
"DFA" Then Sheets("Global").Cells(6, u).Resize(65531).ClearContents
[COLOR=SeaGreen] 'BOISGONTIER[/COLOR]
Next u
Application.ScreenUpdating = True
End Sub

Code:
Sub Simul_III()
Dim u As Long
[COLOR=SeaGreen]'Pierrot93[/COLOR]
With Sheets("Global")
For u = 5 To 44
If .Cells(5, u).Value = "DFA" Then .Range(.Cells(6, u), .Cells(.Cells(65536, u).End(xlUp).Row, u)).ClearContents
Next u
End With
End Sub
 
Dernière édition:
Re : effacement d'une partie d'une colonne

Bonsoir à tous


Teste sous XL 2000 sans message d'erreur

Code:
Sub simul_ii()
Dim u As Long
Application.ScreenUpdating = False
Sheets("Global").Activate
For u = 5 To 44
If Sheets("Global").Cells(5, u).Value = _
"DFA" Then Sheets("Global").Cells(6, u).Resize(65531).ClearContents
[COLOR=SeaGreen] 'BOISGONTIER[/COLOR]
Next u
Application.ScreenUpdating = True
End Sub

Code:
Sub Simul_III()
Dim u As Long
[COLOR=SeaGreen]'Pierrot93[/COLOR]
With Sheets("Global")
For u = 5 To 44
If .Cells(5, u).Value = "DFA" Then .Range(.Cells(6, u), .Cells(.Cells(65536, u).End(xlUp).Row, u)).ClearContents
Next u
End With
End Sub

pour le premier code il me marque toujours incompatibilite de type et ppour le deuxième code qui est pour moi plus interessant car j'aimerai limiter le nombre de ligne (50 par exemple) le code ne fonctionne pas du tout. oops ?
 
Re : effacement d'une partie d'une colonne

bonsoir
autant pour moi pierrot maintenant ca fonctionne .
serait il possible de pouvoir limiter le nombre de ligne à 50 c'est à dire de travailler uniquement de la ligne 6 à la ligne 56 et sur les colonnes de 5 à 44 bien sur ?
merci
 
Re : effacement d'une partie d'une colonne

Bonjour Lagodille

comme ceci, peut être :

Code:
Sub test()
Dim u As Integer
With Sheets("Global")
    For u = 5 To 44
        If .Cells(5, u).Value = "DFA" Then .Range(.Cells(6, u), .Cells(56, u)).ClearContents
    Next u
End With
End Sub

bonne journée
@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
453
  • Question Question
Microsoft 365 Programme trop lent
Réponses
12
Affichages
1 K
  • Question Question
Réponses
6
Affichages
783
Q
Réponses
0
Affichages
849
quent632
Q
M
Réponses
3
Affichages
1 K
MarieChérie
M
O
Réponses
5
Affichages
2 K
Retour