OVH Cloud OVH Cloud

Exemple de script VBA

16 réponses
Avatar
Dave
Bonjour,

J'ai un probléme que je n'arrive pas a résoudre
J'ai une feuille avec ce type d'element dans mes cellules
Je veux supprimer dans cet exemple toute les lignes ou il y a les valeurs
CC et les lignes vides et je ne connais pas le nombre de ligne que j'ai a
l'avance

AA
AA
CC
EE
CC
EE
J'ai rien ici
J'ai rien ici
J'ai rien ici
AA
CC
CC
J'ai rien ici
AA
AA

Merci pour vos exemples

6 réponses

1 2
Avatar
jps
y a un peu de ça, je crois...
pardon, LSteph, c'est moi qui vais faire les 100 lignes
quant au As Integer, je crois que LSteph a esseupliqué
jps

"ChrisV" a écrit dans le message de
news:%
Y'a pas les yeux en face des trous ce matin JP !
;-P


ChrisV


"jps" a écrit dans le message de news:
%23XdS%
ach!!!!!!!!!!! LSteph!!!!!!!!!
je te surprends à répondre A COTE DE LA PLAQUE
dave demandait ce que signifiait :
Ligne = Range("A65536").End(xlUp).Row
qui figurait dans la proc de daniel et non dans la tienne dont la boucle
balaie depuis les abysses de la feuille..
héhé, l'est plus astucieux daniel...encore qu'une petite seconde, quoi
t-est-ce dans la vie d'un homme, je veux dire d'un jeune homme...
tu me feras quand même 100 lignes : "j'utilise une variable pour définir
la
dernier ligne occupée d'un tableau"
jps

"LSteph" a écrit dans le message de
news:%
Bonjour Dave,
explication de :

Sub aavides()
Dim i As Long
For i = [a65536].End(xlUp).Row To 1 Step -1
If IsEmpty(Cells(i, 1)) Or _
UCase(Cells(i, 1)) Like "*CC*" Then
Rows(i).EntireRow.Delete
End If
Next
End Sub


Sub aavides()
Dim i As Long
'long et non integer qui limiterait le nombre de ligne en deçà de celui
d'une feuille

For i = [a65536].End(xlUp).Row To 1 Step -1 'Début de la boucle
'la ligne 65536 est la derniére de la feuille..ainsi comme t'a expliqué
JPS

on remonte par pas(step) de -1
'donc -1 ligne à chaque fois

If IsEmpty(Cells(i, 1)) Or _ 'si la cellule est vide ou
UCase(Cells(i, 1)) Like "*CC*" Then
'si mise en majuscule(ucase) au cas où l'on puisse avoir diverses
expressions de "*cC*"
'ressemle à "*CC*" soit contient CC

Rows(i).EntireRow.Delete 'alors on la supprime la ligne
entière

End If
Next 'suivante
End Sub


'lSteph

"Dave" a écrit dans le message de news:
42bb9cd8$0$23307$
Merci a tous pour le script mais je n'arrive pas a comprendre a quoi
sert


Range("A65536").End(xlUp).Row

est-ce le total ligne dans ma cellule ?

"Daniel" a écrit dans le message de news:

Bonsoir.
Essaie le code suivant, les valeurs sont censées être en colonne A :

Sub Test()
Dim c As Range, Plage As Range, Ligne As Integer
Ligne = Range("A65536").End(xlUp).Row
For i = Ligne To 1 Step -1
If Range("A" & i).Value = "" Or Range("A" & i).Value = "CC"
Then
Range("A" & i).EntireRow.Delete
End If
Next i
End Sub

Cordialement.
Daniel

"Dave" a écrit dans le message de news:
42bb2c71$0$3105$
Bonjour,

J'ai un probléme que je n'arrive pas a résoudre
J'ai une feuille avec ce type d'element dans mes cellules
Je veux supprimer dans cet exemple toute les lignes ou il y a les
valeurs
CC et les lignes vides et je ne connais pas le nombre de ligne que
j'ai




a l'avance

AA
AA
CC
EE
CC
EE
J'ai rien ici
J'ai rien ici
J'ai rien ici
AA
CC
CC
J'ai rien ici
AA
AA

Merci pour vos exemples






















Avatar
SL
Bonjour, je immisce

Si jamais la cellule A65536 n'est pas vide, le dernier bloc de données n'est
pas testé et les éventuels CC qui s'y trouverai ne sont pas supprimés.
Bon... la probabilité est peut-être faible, mais sait-on jamais ?

Stéphane


"jps" a écrit dans le message de news:

y a un peu de ça, je crois...
pardon, LSteph, c'est moi qui vais faire les 100 lignes
quant au As Integer, je crois que LSteph a esseupliqué
jps

"ChrisV" a écrit dans le message de
news:%
Y'a pas les yeux en face des trous ce matin JP !
;-P


ChrisV


"jps" a écrit dans le message de news:
%23XdS%
ach!!!!!!!!!!! LSteph!!!!!!!!!
je te surprends à répondre A COTE DE LA PLAQUE
dave demandait ce que signifiait :
Ligne = Range("A65536").End(xlUp).Row
qui figurait dans la proc de daniel et non dans la tienne dont la
boucle
balaie depuis les abysses de la feuille..
héhé, l'est plus astucieux daniel...encore qu'une petite seconde, quoi
t-est-ce dans la vie d'un homme, je veux dire d'un jeune homme...
tu me feras quand même 100 lignes : "j'utilise une variable pour
définir
la
dernier ligne occupée d'un tableau"
jps

"LSteph" a écrit dans le message de
news:%
Bonjour Dave,
explication de :

Sub aavides()
Dim i As Long
For i = [a65536].End(xlUp).Row To 1 Step -1
If IsEmpty(Cells(i, 1)) Or _
UCase(Cells(i, 1)) Like "*CC*" Then
Rows(i).EntireRow.Delete
End If
Next
End Sub


Sub aavides()
Dim i As Long
'long et non integer qui limiterait le nombre de ligne en deçà de
celui
d'une feuille

For i = [a65536].End(xlUp).Row To 1 Step -1 'Début de la boucle
'la ligne 65536 est la derniére de la feuille..ainsi comme t'a
expliqué
JPS

on remonte par pas(step) de -1
'donc -1 ligne à chaque fois

If IsEmpty(Cells(i, 1)) Or _ 'si la cellule est vide ou
UCase(Cells(i, 1)) Like "*CC*" Then
'si mise en majuscule(ucase) au cas où l'on puisse avoir diverses
expressions de "*cC*"
'ressemle à "*CC*" soit contient CC

Rows(i).EntireRow.Delete 'alors on la supprime la ligne
entière

End If
Next 'suivante
End Sub


'lSteph

"Dave" a écrit dans le message de news:
42bb9cd8$0$23307$
Merci a tous pour le script mais je n'arrive pas a comprendre a quoi
sert


Range("A65536").End(xlUp).Row

est-ce le total ligne dans ma cellule ?

"Daniel" a écrit dans le message de news:

Bonsoir.
Essaie le code suivant, les valeurs sont censées être en colonne A
:

Sub Test()
Dim c As Range, Plage As Range, Ligne As Integer
Ligne = Range("A65536").End(xlUp).Row
For i = Ligne To 1 Step -1
If Range("A" & i).Value = "" Or Range("A" & i).Value = "CC"
Then
Range("A" & i).EntireRow.Delete
End If
Next i
End Sub

Cordialement.
Daniel

"Dave" a écrit dans le message de news:
42bb2c71$0$3105$
Bonjour,

J'ai un probléme que je n'arrive pas a résoudre
J'ai une feuille avec ce type d'element dans mes cellules
Je veux supprimer dans cet exemple toute les lignes ou il y a les
valeurs
CC et les lignes vides et je ne connais pas le nombre de ligne que
j'ai




a l'avance

AA
AA
CC
EE
CC
EE
J'ai rien ici
J'ai rien ici
J'ai rien ici
AA
CC
CC
J'ai rien ici
AA
AA

Merci pour vos exemples

























Avatar
jps
certes...
jps

"SL" a écrit dans le message de
news:
Bonjour, je immisce

Si jamais la cellule A65536 n'est pas vide, le dernier bloc de données
n'est

pas testé et les éventuels CC qui s'y trouverai ne sont pas supprimés.
Bon... la probabilité est peut-être faible, mais sait-on jamais ?

Stéphane


"jps" a écrit dans le message de news:

y a un peu de ça, je crois...
pardon, LSteph, c'est moi qui vais faire les 100 lignes
quant au As Integer, je crois que LSteph a esseupliqué
jps

"ChrisV" a écrit dans le message de
news:%
Y'a pas les yeux en face des trous ce matin JP !
;-P


ChrisV


"jps" a écrit dans le message de news:
%23XdS%
ach!!!!!!!!!!! LSteph!!!!!!!!!
je te surprends à répondre A COTE DE LA PLAQUE
dave demandait ce que signifiait :
Ligne = Range("A65536").End(xlUp).Row
qui figurait dans la proc de daniel et non dans la tienne dont la
boucle
balaie depuis les abysses de la feuille..
héhé, l'est plus astucieux daniel...encore qu'une petite seconde,
quoi




t-est-ce dans la vie d'un homme, je veux dire d'un jeune homme...
tu me feras quand même 100 lignes : "j'utilise une variable pour
définir
la
dernier ligne occupée d'un tableau"
jps

"LSteph" a écrit dans le message de
news:%
Bonjour Dave,
explication de :

Sub aavides()
Dim i As Long
For i = [a65536].End(xlUp).Row To 1 Step -1
If IsEmpty(Cells(i, 1)) Or _
UCase(Cells(i, 1)) Like "*CC*" Then
Rows(i).EntireRow.Delete
End If
Next
End Sub


Sub aavides()
Dim i As Long
'long et non integer qui limiterait le nombre de ligne en deçà de
celui
d'une feuille

For i = [a65536].End(xlUp).Row To 1 Step -1 'Début de la
boucle





'la ligne 65536 est la derniére de la feuille..ainsi comme t'a
expliqué
JPS

on remonte par pas(step) de -1
'donc -1 ligne à chaque fois

If IsEmpty(Cells(i, 1)) Or _ 'si la cellule est vide ou
UCase(Cells(i, 1)) Like "*CC*" Then
'si mise en majuscule(ucase) au cas où l'on puisse avoir diverses
expressions de "*cC*"
'ressemle à "*CC*" soit contient CC

Rows(i).EntireRow.Delete 'alors on la supprime la ligne
entière

End If
Next 'suivante
End Sub


'lSteph

"Dave" a écrit dans le message de news:
42bb9cd8$0$23307$
Merci a tous pour le script mais je n'arrive pas a comprendre a
quoi






sert
Range("A65536").End(xlUp).Row

est-ce le total ligne dans ma cellule ?

"Daniel" a écrit dans le message de news:

Bonsoir.
Essaie le code suivant, les valeurs sont censées être en colonne
A







:

Sub Test()
Dim c As Range, Plage As Range, Ligne As Integer
Ligne = Range("A65536").End(xlUp).Row
For i = Ligne To 1 Step -1
If Range("A" & i).Value = "" Or Range("A" & i).Value "CC"
Then
Range("A" & i).EntireRow.Delete
End If
Next i
End Sub

Cordialement.
Daniel

"Dave" a écrit dans le message de news:
42bb2c71$0$3105$
Bonjour,

J'ai un probléme que je n'arrive pas a résoudre
J'ai une feuille avec ce type d'element dans mes cellules
Je veux supprimer dans cet exemple toute les lignes ou il y a
les








valeurs
CC et les lignes vides et je ne connais pas le nombre de ligne
que








j'ai
a l'avance

AA
AA
CC
EE
CC
EE
J'ai rien ici
J'ai rien ici
J'ai rien ici
AA
CC
CC
J'ai rien ici
AA
AA

Merci pour vos exemples





























Avatar
LSteph
;-) Bonjour
Chris heureusement , tu étais là!

Merci

"ChrisV" a écrit dans le message de news:
%
tu me feras quand même 100 lignes : "j'utilise une variable...


et: [a65536].End(xlUp).Row
il est là pour faire joli ?

Y'a pas les yeux en face des trous ce matin JP !
;-P


ChrisV


"jps" a écrit dans le message de news:
%23XdS%
ach!!!!!!!!!!! LSteph!!!!!!!!!
je te surprends à répondre A COTE DE LA PLAQUE
dave demandait ce que signifiait :
Ligne = Range("A65536").End(xlUp).Row
qui figurait dans la proc de daniel et non dans la tienne dont la boucle
balaie depuis les abysses de la feuille..
héhé, l'est plus astucieux daniel...encore qu'une petite seconde, quoi
t-est-ce dans la vie d'un homme, je veux dire d'un jeune homme...
tu me feras quand même 100 lignes : "j'utilise une variable pour définir
la
dernier ligne occupée d'un tableau"
jps

"LSteph" a écrit dans le message de
news:%
Bonjour Dave,
explication de :

Sub aavides()
Dim i As Long
For i = [a65536].End(xlUp).Row To 1 Step -1
If IsEmpty(Cells(i, 1)) Or _
UCase(Cells(i, 1)) Like "*CC*" Then
Rows(i).EntireRow.Delete
End If
Next
End Sub


Sub aavides()
Dim i As Long
'long et non integer qui limiterait le nombre de ligne en deçà de celui
d'une feuille

For i = [a65536].End(xlUp).Row To 1 Step -1 'Début de la boucle
'la ligne 65536 est la derniére de la feuille..ainsi comme t'a expliqué
JPS

on remonte par pas(step) de -1
'donc -1 ligne à chaque fois

If IsEmpty(Cells(i, 1)) Or _ 'si la cellule est vide ou
UCase(Cells(i, 1)) Like "*CC*" Then
'si mise en majuscule(ucase) au cas où l'on puisse avoir diverses
expressions de "*cC*"
'ressemle à "*CC*" soit contient CC

Rows(i).EntireRow.Delete 'alors on la supprime la ligne
entière

End If
Next 'suivante
End Sub


'lSteph

"Dave" a écrit dans le message de news:
42bb9cd8$0$23307$
Merci a tous pour le script mais je n'arrive pas a comprendre a quoi
sert


Range("A65536").End(xlUp).Row

est-ce le total ligne dans ma cellule ?

"Daniel" a écrit dans le message de news:

Bonsoir.
Essaie le code suivant, les valeurs sont censées être en colonne A :

Sub Test()
Dim c As Range, Plage As Range, Ligne As Integer
Ligne = Range("A65536").End(xlUp).Row
For i = Ligne To 1 Step -1
If Range("A" & i).Value = "" Or Range("A" & i).Value = "CC"
Then
Range("A" & i).EntireRow.Delete
End If
Next i
End Sub

Cordialement.
Daniel

"Dave" a écrit dans le message de news:
42bb2c71$0$3105$
Bonjour,

J'ai un probléme que je n'arrive pas a résoudre
J'ai une feuille avec ce type d'element dans mes cellules
Je veux supprimer dans cet exemple toute les lignes ou il y a les
valeurs
CC et les lignes vides et je ne connais pas le nombre de ligne que
j'ai




a l'avance

AA
AA
CC
EE
CC
EE
J'ai rien ici
J'ai rien ici
J'ai rien ici
AA
CC
CC
J'ai rien ici
AA
AA

Merci pour vos exemples






















Avatar
LSteph
Re, bonjour,

"Matinalement, je dois boire mon premier verre de beaujolais avant de lire
le post,
mais je dois toujours terminer ma lecture avant le second "!

Alors cent fois non! (même si tu as été un rien krissssant...>>à coté de la
plaque)

cinquante suffiront puisque tu as qd même repèré le integer malgré.... (vu
l'heure.....* n.

;o) ...et encore merci à ChrisV (le bon celui-ci)

"jps" a écrit dans le message de news:

y a un peu de ça, je crois...
pardon, LSteph, c'est moi qui vais faire les 100 lignes
quant au As Integer, je crois que LSteph a esseupliqué
jps

"ChrisV" a écrit dans le message de
news:%
Y'a pas les yeux en face des trous ce matin JP !
;-P


ChrisV


"jps" a écrit dans le message de news:
%23XdS%
ach!!!!!!!!!!! LSteph!!!!!!!!!
je te surprends à répondre A COTE DE LA PLAQUE
dave demandait ce que signifiait :
Ligne = Range("A65536").End(xlUp).Row
qui figurait dans la proc de daniel et non dans la tienne dont la
boucle
balaie depuis les abysses de la feuille..
héhé, l'est plus astucieux daniel...encore qu'une petite seconde, quoi
t-est-ce dans la vie d'un homme, je veux dire d'un jeune homme...
tu me feras quand même 100 lignes : "j'utilise une variable pour
définir
la
dernier ligne occupée d'un tableau"
jps

"LSteph" a écrit dans le message de
news:%
Bonjour Dave,
explication de :

Sub aavides()
Dim i As Long
For i = [a65536].End(xlUp).Row To 1 Step -1
If IsEmpty(Cells(i, 1)) Or _
UCase(Cells(i, 1)) Like "*CC*" Then
Rows(i).EntireRow.Delete
End If
Next
End Sub


Sub aavides()
Dim i As Long
'long et non integer qui limiterait le nombre de ligne en deçà de
celui
d'une feuille

For i = [a65536].End(xlUp).Row To 1 Step -1 'Début de la boucle
'la ligne 65536 est la derniére de la feuille..ainsi comme t'a
expliqué
JPS

on remonte par pas(step) de -1
'donc -1 ligne à chaque fois

If IsEmpty(Cells(i, 1)) Or _ 'si la cellule est vide ou
UCase(Cells(i, 1)) Like "*CC*" Then
'si mise en majuscule(ucase) au cas où l'on puisse avoir diverses
expressions de "*cC*"
'ressemle à "*CC*" soit contient CC

Rows(i).EntireRow.Delete 'alors on la supprime la ligne
entière

End If
Next 'suivante
End Sub


'lSteph

"Dave" a écrit dans le message de news:
42bb9cd8$0$23307$
Merci a tous pour le script mais je n'arrive pas a comprendre a quoi
sert


Range("A65536").End(xlUp).Row

est-ce le total ligne dans ma cellule ?

"Daniel" a écrit dans le message de news:

Bonsoir.
Essaie le code suivant, les valeurs sont censées être en colonne A
:

Sub Test()
Dim c As Range, Plage As Range, Ligne As Integer
Ligne = Range("A65536").End(xlUp).Row
For i = Ligne To 1 Step -1
If Range("A" & i).Value = "" Or Range("A" & i).Value = "CC"
Then
Range("A" & i).EntireRow.Delete
End If
Next i
End Sub

Cordialement.
Daniel

"Dave" a écrit dans le message de news:
42bb2c71$0$3105$
Bonjour,

J'ai un probléme que je n'arrive pas a résoudre
J'ai une feuille avec ce type d'element dans mes cellules
Je veux supprimer dans cet exemple toute les lignes ou il y a les
valeurs
CC et les lignes vides et je ne connais pas le nombre de ligne que
j'ai




a l'avance

AA
AA
CC
EE
CC
EE
J'ai rien ici
J'ai rien ici
J'ai rien ici
AA
CC
CC
J'ai rien ici
AA
AA

Merci pour vos exemples

























Avatar
jps
c'est dave qui doit être content de voir tous ces développements autour de
sa question...
jps

"LSteph" a écrit dans le message de news:

Re, bonjour,

"Matinalement, je dois boire mon premier verre de beaujolais avant de lire
le post,
mais je dois toujours terminer ma lecture avant le second "!

Alors cent fois non! (même si tu as été un rien krissssant...>>à coté de
la plaque)

cinquante suffiront puisque tu as qd même repèré le integer malgré.... (vu
l'heure.....* n.

;o) ...et encore merci à ChrisV (le bon celui-ci)

"jps" a écrit dans le message de news:

y a un peu de ça, je crois...
pardon, LSteph, c'est moi qui vais faire les 100 lignes
quant au As Integer, je crois que LSteph a esseupliqué
jps

"ChrisV" a écrit dans le message de
news:%
Y'a pas les yeux en face des trous ce matin JP !
;-P


ChrisV


"jps" a écrit dans le message de news:
%23XdS%
ach!!!!!!!!!!! LSteph!!!!!!!!!
je te surprends à répondre A COTE DE LA PLAQUE
dave demandait ce que signifiait :
Ligne = Range("A65536").End(xlUp).Row
qui figurait dans la proc de daniel et non dans la tienne dont la
boucle
balaie depuis les abysses de la feuille..
héhé, l'est plus astucieux daniel...encore qu'une petite seconde, quoi
t-est-ce dans la vie d'un homme, je veux dire d'un jeune homme...
tu me feras quand même 100 lignes : "j'utilise une variable pour
définir
la
dernier ligne occupée d'un tableau"
jps

"LSteph" a écrit dans le message de
news:%
Bonjour Dave,
explication de :

Sub aavides()
Dim i As Long
For i = [a65536].End(xlUp).Row To 1 Step -1
If IsEmpty(Cells(i, 1)) Or _
UCase(Cells(i, 1)) Like "*CC*" Then
Rows(i).EntireRow.Delete
End If
Next
End Sub


Sub aavides()
Dim i As Long
'long et non integer qui limiterait le nombre de ligne en deçà de
celui
d'une feuille

For i = [a65536].End(xlUp).Row To 1 Step -1 'Début de la boucle
'la ligne 65536 est la derniére de la feuille..ainsi comme t'a
expliqué
JPS

on remonte par pas(step) de -1
'donc -1 ligne à chaque fois

If IsEmpty(Cells(i, 1)) Or _ 'si la cellule est vide ou
UCase(Cells(i, 1)) Like "*CC*" Then
'si mise en majuscule(ucase) au cas où l'on puisse avoir diverses
expressions de "*cC*"
'ressemle à "*CC*" soit contient CC

Rows(i).EntireRow.Delete 'alors on la supprime la ligne
entière

End If
Next 'suivante
End Sub


'lSteph

"Dave" a écrit dans le message de news:
42bb9cd8$0$23307$
Merci a tous pour le script mais je n'arrive pas a comprendre a
quoi
sert


Range("A65536").End(xlUp).Row

est-ce le total ligne dans ma cellule ?

"Daniel" a écrit dans le message de news:

Bonsoir.
Essaie le code suivant, les valeurs sont censées être en colonne A
:

Sub Test()
Dim c As Range, Plage As Range, Ligne As Integer
Ligne = Range("A65536").End(xlUp).Row
For i = Ligne To 1 Step -1
If Range("A" & i).Value = "" Or Range("A" & i).Value = "CC"
Then
Range("A" & i).EntireRow.Delete
End If
Next i
End Sub

Cordialement.
Daniel

"Dave" a écrit dans le message de news:
42bb2c71$0$3105$
Bonjour,

J'ai un probléme que je n'arrive pas a résoudre
J'ai une feuille avec ce type d'element dans mes cellules
Je veux supprimer dans cet exemple toute les lignes ou il y a les
valeurs
CC et les lignes vides et je ne connais pas le nombre de ligne
que
j'ai




a l'avance

AA
AA
CC
EE
CC
EE
J'ai rien ici
J'ai rien ici
J'ai rien ici
AA
CC
CC
J'ai rien ici
AA
AA

Merci pour vos exemples





























1 2