Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Effancement de ligne

10 réponses
Avatar
Gouap
Bonjour,

Je cherche depuis un moment comment je pourrais effacer les lignes
correspondant aux cellules sélectionner dans une seule colonne.
J'ai veux pouvoir quand je sélectionne dans la colonne A une cellule ou une
suite de cellule comme A1:A12 par exemple, effacer un ensemble des cellules
correspondant aux les lignes sélectionnée.
Ce qui donnerait pour mon exemple Range (A1:J:12).Value = ""

je me doute que ce n'est pas bien difficile, mais vu mon niveau en VB, je ne
trouve pas !

10 réponses

Avatar
JPMonnier
Bonjour,
une fois ta sélection faite
en VB tu écrit cette commande dans une Sub
Sub Supprime()
Selection.EntireRow.Delete
End Sub
il faut créer un bouton sur ta feuille de calcule pour lancer cette
procédure
--
Cordialement

"Gouap" a écrit dans le message de
news:
Bonjour,

Je cherche depuis un moment comment je pourrais effacer les lignes
correspondant aux cellules sélectionner dans une seule colonne.
J'ai veux pouvoir quand je sélectionne dans la colonne A une cellule ou
une suite de cellule comme A1:A12 par exemple, effacer un ensemble des
cellules correspondant aux les lignes sélectionnée.
Ce qui donnerait pour mon exemple Range (A1:J:12).Value = ""

je me doute que ce n'est pas bien difficile, mais vu mon niveau en VB, je
ne trouve pas !



Avatar
Gouap
Ta commande supprime toute la ligne or je cherche à connaitre la dernière
cellule sélectionnée pour pouvoir construire une commande du type Range(A
"1ere cellule sélectionnée" : colonne J "dernière cellule sélectionnée")

"JPMonnier" a écrit dans le message de news:
%
Bonjour,
une fois ta sélection faite
en VB tu écrit cette commande dans une Sub
Sub Supprime()
Selection.EntireRow.Delete
End Sub
il faut créer un bouton sur ta feuille de calcule pour lancer cette
procédure
--
Cordialement

"Gouap" a écrit dans le message de
news:
Bonjour,

Je cherche depuis un moment comment je pourrais effacer les lignes
correspondant aux cellules sélectionner dans une seule colonne.
J'ai veux pouvoir quand je sélectionne dans la colonne A une cellule ou
une suite de cellule comme A1:A12 par exemple, effacer un ensemble des
cellules correspondant aux les lignes sélectionnée.
Ce qui donnerait pour mon exemple Range (A1:J:12).Value = ""

je me doute que ce n'est pas bien difficile, mais vu mon niveau en VB, je
ne trouve pas !






Avatar
JPMonnier
"Gouap" a écrit dans le message de
news:
Ta commande supprime toute la ligne or je cherche à connaitre la dernière
cellule sélectionnée pour pouvoir construire une commande du type Range(A
"1ere cellule sélectionnée" : colonne J "dernière cellule sélectionnée")

"JPMonnier" a écrit dans le message de news:
%
Bonjour,
une fois ta sélection faite
en VB tu écrit cette commande dans une Sub
Sub Supprime()
Selection.EntireRow.Delete
End Sub
il faut créer un bouton sur ta feuille de calcule pour lancer cette
procédure
--
Cordialement

"Gouap" a écrit dans le message de
news:
Bonjour,

Je cherche depuis un moment comment je pourrais effacer les lignes
correspondant aux cellules sélectionner dans une seule colonne.
J'ai veux pouvoir quand je sélectionne dans la colonne A une cellule ou
une suite de cellule comme A1:A12 par exemple, effacer un ensemble des
cellules correspondant aux les lignes sélectionnée.
Ce qui donnerait pour mon exemple Range (A1:J:12).Value = ""

je me doute que ce n'est pas bien difficile, mais vu mon niveau en VB,
je ne trouve pas !










Avatar
JPMonnier
Je ne vois pas très bien ce que tu veux faire, mais après ta sélection
faite,
si tu fais
MsgBox Selection.Address
cela te renvoie la 1ère et la dernière cellule de ta sélection
--
Cordialement

"Gouap" a écrit dans le message de
news:
Ta commande supprime toute la ligne or je cherche à connaitre la dernière
cellule sélectionnée pour pouvoir construire une commande du type Range(A
"1ere cellule sélectionnée" : colonne J "dernière cellule sélectionnée")

"JPMonnier" a écrit dans le message de news:
%
Bonjour,
une fois ta sélection faite
en VB tu écrit cette commande dans une Sub
Sub Supprime()
Selection.EntireRow.Delete
End Sub
il faut créer un bouton sur ta feuille de calcule pour lancer cette
procédure
--
Cordialement

"Gouap" a écrit dans le message de
news:
Bonjour,

Je cherche depuis un moment comment je pourrais effacer les lignes
correspondant aux cellules sélectionner dans une seule colonne.
J'ai veux pouvoir quand je sélectionne dans la colonne A une cellule ou
une suite de cellule comme A1:A12 par exemple, effacer un ensemble des
cellules correspondant aux les lignes sélectionnée.
Ce qui donnerait pour mon exemple Range (A1:J:12).Value = ""

je me doute que ce n'est pas bien difficile, mais vu mon niveau en VB,
je ne trouve pas !










Avatar
Gouap
Ton idée m'a permis d'écrire les lignes suivantes :

Ligne_de_Départ = Right(Left(Selection.Address, InStr(Selection.Address,
":") - 1), InStrRev(Left(Selection.Address, InStr(Selection.Address, ":") -
1), "$") - 1)

Ligne_de_Fin = Right(Right(Selection.Address, InStr(Selection.Address,
":") - 1), InStrRev(Right(Selection.Address, InStr(Selection.Address, ":") -
1), "$") - 1)

Range("h" & Ligne_de_Départ & ":ac" &
Ligne_de_Fin).SpecialCells(xlCellTypeConstants).ClearContents

C'est surement perfectible, mais au moins ça fonctionne.


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

Je ne vois pas très bien ce que tu veux faire, mais après ta sélection
faite,
si tu fais
MsgBox Selection.Address
cela te renvoie la 1ère et la dernière cellule de ta sélection
--
Cordialement

"Gouap" a écrit dans le message de
news:
Ta commande supprime toute la ligne or je cherche à connaitre la dernière
cellule sélectionnée pour pouvoir construire une commande du type Range(A
"1ere cellule sélectionnée" : colonne J "dernière cellule sélectionnée")

"JPMonnier" a écrit dans le message de news:
%
Bonjour,
une fois ta sélection faite
en VB tu écrit cette commande dans une Sub
Sub Supprime()
Selection.EntireRow.Delete
End Sub
il faut créer un bouton sur ta feuille de calcule pour lancer cette
procédure
--
Cordialement

"Gouap" a écrit dans le message de
news:
Bonjour,

Je cherche depuis un moment comment je pourrais effacer les lignes
correspondant aux cellules sélectionner dans une seule colonne.
J'ai veux pouvoir quand je sélectionne dans la colonne A une cellule ou
une suite de cellule comme A1:A12 par exemple, effacer un ensemble des
cellules correspondant aux les lignes sélectionnée.
Ce qui donnerait pour mon exemple Range (A1:J:12).Value = ""

je me doute que ce n'est pas bien difficile, mais vu mon niveau en VB,
je ne trouve pas !













Avatar
michdenis
Bonjour Gouap,

Il y a aussi ceci :

'-------------------------
Sub test()

If TypeName(Selection) = "Range" Then
Ligne_de_Départ = Selection(1).Row
Ligne_de_Fin = Selection(Selection.Rows.Count).Row
End If
Range("h" & Ligne_de_Départ & ":ac" & Ligne_de_Fin). _
SpecialCells(2, 23).ClearContents
End Sub
'-------------------------



"Gouap" a écrit dans le message de groupe de discussion :

Ton idée m'a permis d'écrire les lignes suivantes :

Ligne_de_Départ = Right(Left(Selection.Address, InStr(Selection.Address,
":") - 1), InStrRev(Left(Selection.Address, InStr(Selection.Address, ":") -
1), "$") - 1)

Ligne_de_Fin = Right(Right(Selection.Address, InStr(Selection.Address,
":") - 1), InStrRev(Right(Selection.Address, InStr(Selection.Address, ":") -
1), "$") - 1)

Range("h" & Ligne_de_Départ & ":ac" &
Ligne_de_Fin).SpecialCells(xlCellTypeConstants).ClearContents

C'est surement perfectible, mais au moins ça fonctionne.


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

Je ne vois pas très bien ce que tu veux faire, mais après ta sélection
faite,
si tu fais
MsgBox Selection.Address
cela te renvoie la 1ère et la dernière cellule de ta sélection
--
Cordialement

"Gouap" a écrit dans le message de
news:
Ta commande supprime toute la ligne or je cherche à connaitre la dernière
cellule sélectionnée pour pouvoir construire une commande du type Range(A
"1ere cellule sélectionnée" : colonne J "dernière cellule sélectionnée")

"JPMonnier" a écrit dans le message de news:
%
Bonjour,
une fois ta sélection faite
en VB tu écrit cette commande dans une Sub
Sub Supprime()
Selection.EntireRow.Delete
End Sub
il faut créer un bouton sur ta feuille de calcule pour lancer cette
procédure
--
Cordialement

"Gouap" a écrit dans le message de
news:
Bonjour,

Je cherche depuis un moment comment je pourrais effacer les lignes
correspondant aux cellules sélectionner dans une seule colonne.
J'ai veux pouvoir quand je sélectionne dans la colonne A une cellule ou
une suite de cellule comme A1:A12 par exemple, effacer un ensemble des
cellules correspondant aux les lignes sélectionnée.
Ce qui donnerait pour mon exemple Range (A1:J:12).Value = ""

je me doute que ce n'est pas bien difficile, mais vu mon niveau en VB,
je ne trouve pas !













Avatar
JPMonnier
Je pense que les grands du forum pourront perfectionner ton idée !!
A ton service
--
Cordialement


"Gouap" a écrit dans le message de
news:
Ton idée m'a permis d'écrire les lignes suivantes :

Ligne_de_Départ = Right(Left(Selection.Address, InStr(Selection.Address,
":") - 1), InStrRev(Left(Selection.Address, InStr(Selection.Address,
":") - 1), "$") - 1)

Ligne_de_Fin = Right(Right(Selection.Address, InStr(Selection.Address,
":") - 1), InStrRev(Right(Selection.Address, InStr(Selection.Address,
":") - 1), "$") - 1)

Range("h" & Ligne_de_Départ & ":ac" &
Ligne_de_Fin).SpecialCells(xlCellTypeConstants).ClearContents

C'est surement perfectible, mais au moins ça fonctionne.


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

Je ne vois pas très bien ce que tu veux faire, mais après ta sélection
faite,
si tu fais
MsgBox Selection.Address
cela te renvoie la 1ère et la dernière cellule de ta sélection
--
Cordialement

"Gouap" a écrit dans le message de
news:
Ta commande supprime toute la ligne or je cherche à connaitre la
dernière cellule sélectionnée pour pouvoir construire une commande du
type Range(A "1ere cellule sélectionnée" : colonne J "dernière cellule
sélectionnée")

"JPMonnier" a écrit dans le message de news:
%
Bonjour,
une fois ta sélection faite
en VB tu écrit cette commande dans une Sub
Sub Supprime()
Selection.EntireRow.Delete
End Sub
il faut créer un bouton sur ta feuille de calcule pour lancer cette
procédure
--
Cordialement

"Gouap" a écrit dans le message de
news:
Bonjour,

Je cherche depuis un moment comment je pourrais effacer les lignes
correspondant aux cellules sélectionner dans une seule colonne.
J'ai veux pouvoir quand je sélectionne dans la colonne A une cellule
ou une suite de cellule comme A1:A12 par exemple, effacer un ensemble
des cellules correspondant aux les lignes sélectionnée.
Ce qui donnerait pour mon exemple Range (A1:J:12).Value = ""

je me doute que ce n'est pas bien difficile, mais vu mon niveau en VB,
je ne trouve pas !

















Avatar
Gouap
Je me doutais bien que mon code était perfectible.
Merci pour la correction.

"michdenis" a écrit dans le message de news:
%
Bonjour Gouap,

Il y a aussi ceci :

'-------------------------
Sub test()

If TypeName(Selection) = "Range" Then
Ligne_de_Départ = Selection(1).Row
Ligne_de_Fin = Selection(Selection.Rows.Count).Row
End If
Range("h" & Ligne_de_Départ & ":ac" & Ligne_de_Fin). _
SpecialCells(2, 23).ClearContents
End Sub
'-------------------------



"Gouap" a écrit dans le message de groupe de discussion :

Ton idée m'a permis d'écrire les lignes suivantes :

Ligne_de_Départ = Right(Left(Selection.Address, InStr(Selection.Address,
":") - 1), InStrRev(Left(Selection.Address, InStr(Selection.Address,
":") -
1), "$") - 1)

Ligne_de_Fin = Right(Right(Selection.Address, InStr(Selection.Address,
":") - 1), InStrRev(Right(Selection.Address, InStr(Selection.Address,
":") -
1), "$") - 1)

Range("h" & Ligne_de_Départ & ":ac" &
Ligne_de_Fin).SpecialCells(xlCellTypeConstants).ClearContents

C'est surement perfectible, mais au moins ça fonctionne.


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

Je ne vois pas très bien ce que tu veux faire, mais après ta sélection
faite,
si tu fais
MsgBox Selection.Address
cela te renvoie la 1ère et la dernière cellule de ta sélection
--
Cordialement

"Gouap" a écrit dans le message de
news:
Ta commande supprime toute la ligne or je cherche à connaitre la
dernière
cellule sélectionnée pour pouvoir construire une commande du type
Range(A
"1ere cellule sélectionnée" : colonne J "dernière cellule sélectionnée")

"JPMonnier" a écrit dans le message de news:
%
Bonjour,
une fois ta sélection faite
en VB tu écrit cette commande dans une Sub
Sub Supprime()
Selection.EntireRow.Delete
End Sub
il faut créer un bouton sur ta feuille de calcule pour lancer cette
procédure
--
Cordialement

"Gouap" a écrit dans le message de
news:
Bonjour,

Je cherche depuis un moment comment je pourrais effacer les lignes
correspondant aux cellules sélectionner dans une seule colonne.
J'ai veux pouvoir quand je sélectionne dans la colonne A une cellule
ou
une suite de cellule comme A1:A12 par exemple, effacer un ensemble des
cellules correspondant aux les lignes sélectionnée.
Ce qui donnerait pour mon exemple Range (A1:J:12).Value = ""

je me doute que ce n'est pas bien difficile, mais vu mon niveau en VB,
je ne trouve pas !
















Avatar
michdenis
Je souligne qu'il est de bon aloi d'utiliser
la ligne de code " On Error Resume Next" devant la
ligne de code utilisant "SpecialCell" car cette méthode
génère une erreur lorsqu'il n'y a pas de cellules
correspondantes.



"michdenis" a écrit dans le message de groupe de discussion :
#
Bonjour Gouap,

Il y a aussi ceci :

'-------------------------
Sub test()

If TypeName(Selection) = "Range" Then
Ligne_de_Départ = Selection(1).Row
Ligne_de_Fin = Selection(Selection.Rows.Count).Row
End If
Range("h" & Ligne_de_Départ & ":ac" & Ligne_de_Fin). _
SpecialCells(2, 23).ClearContents
End Sub
'-------------------------



"Gouap" a écrit dans le message de groupe de discussion :

Ton idée m'a permis d'écrire les lignes suivantes :

Ligne_de_Départ = Right(Left(Selection.Address, InStr(Selection.Address,
":") - 1), InStrRev(Left(Selection.Address, InStr(Selection.Address, ":") -
1), "$") - 1)

Ligne_de_Fin = Right(Right(Selection.Address, InStr(Selection.Address,
":") - 1), InStrRev(Right(Selection.Address, InStr(Selection.Address, ":") -
1), "$") - 1)

Range("h" & Ligne_de_Départ & ":ac" &
Ligne_de_Fin).SpecialCells(xlCellTypeConstants).ClearContents

C'est surement perfectible, mais au moins ça fonctionne.


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

Je ne vois pas très bien ce que tu veux faire, mais après ta sélection
faite,
si tu fais
MsgBox Selection.Address
cela te renvoie la 1ère et la dernière cellule de ta sélection
--
Cordialement

"Gouap" a écrit dans le message de
news:
Ta commande supprime toute la ligne or je cherche à connaitre la dernière
cellule sélectionnée pour pouvoir construire une commande du type Range(A
"1ere cellule sélectionnée" : colonne J "dernière cellule sélectionnée")

"JPMonnier" a écrit dans le message de news:
%
Bonjour,
une fois ta sélection faite
en VB tu écrit cette commande dans une Sub
Sub Supprime()
Selection.EntireRow.Delete
End Sub
il faut créer un bouton sur ta feuille de calcule pour lancer cette
procédure
--
Cordialement

"Gouap" a écrit dans le message de
news:
Bonjour,

Je cherche depuis un moment comment je pourrais effacer les lignes
correspondant aux cellules sélectionner dans une seule colonne.
J'ai veux pouvoir quand je sélectionne dans la colonne A une cellule ou
une suite de cellule comme A1:A12 par exemple, effacer un ensemble des
cellules correspondant aux les lignes sélectionnée.
Ce qui donnerait pour mon exemple Range (A1:J:12).Value = ""

je me doute que ce n'est pas bien difficile, mais vu mon niveau en VB,
je ne trouve pas !













Avatar
JPMonnier
Je pensais bien que c'était perfectible
micheldenis fait parti des grands!!
--
Cordialement

"Gouap" a écrit dans le message de
news:
Je me doutais bien que mon code était perfectible.
Merci pour la correction.

"michdenis" a écrit dans le message de news:
%
Bonjour Gouap,

Il y a aussi ceci :

'-------------------------
Sub test()

If TypeName(Selection) = "Range" Then
Ligne_de_Départ = Selection(1).Row
Ligne_de_Fin = Selection(Selection.Rows.Count).Row
End If
Range("h" & Ligne_de_Départ & ":ac" & Ligne_de_Fin). _
SpecialCells(2, 23).ClearContents
End Sub
'-------------------------



"Gouap" a écrit dans le message de groupe de discussion :

Ton idée m'a permis d'écrire les lignes suivantes :

Ligne_de_Départ = Right(Left(Selection.Address, InStr(Selection.Address,
":") - 1), InStrRev(Left(Selection.Address, InStr(Selection.Address,
":") -
1), "$") - 1)

Ligne_de_Fin = Right(Right(Selection.Address, InStr(Selection.Address,
":") - 1), InStrRev(Right(Selection.Address, InStr(Selection.Address,
":") -
1), "$") - 1)

Range("h" & Ligne_de_Départ & ":ac" &
Ligne_de_Fin).SpecialCells(xlCellTypeConstants).ClearContents

C'est surement perfectible, mais au moins ça fonctionne.


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

Je ne vois pas très bien ce que tu veux faire, mais après ta sélection
faite,
si tu fais
MsgBox Selection.Address
cela te renvoie la 1ère et la dernière cellule de ta sélection
--
Cordialement

"Gouap" a écrit dans le message de
news:
Ta commande supprime toute la ligne or je cherche à connaitre la
dernière
cellule sélectionnée pour pouvoir construire une commande du type
Range(A
"1ere cellule sélectionnée" : colonne J "dernière cellule
sélectionnée")

"JPMonnier" a écrit dans le message de
news:
%
Bonjour,
une fois ta sélection faite
en VB tu écrit cette commande dans une Sub
Sub Supprime()
Selection.EntireRow.Delete
End Sub
il faut créer un bouton sur ta feuille de calcule pour lancer cette
procédure
--
Cordialement

"Gouap" a écrit dans le message de
news:
Bonjour,

Je cherche depuis un moment comment je pourrais effacer les lignes
correspondant aux cellules sélectionner dans une seule colonne.
J'ai veux pouvoir quand je sélectionne dans la colonne A une cellule
ou
une suite de cellule comme A1:A12 par exemple, effacer un ensemble
des
cellules correspondant aux les lignes sélectionnée.
Ce qui donnerait pour mon exemple Range (A1:J:12).Value = ""

je me doute que ce n'est pas bien difficile, mais vu mon niveau en
VB,
je ne trouve pas !