Effacer contenu d'une colonne avec l'aide d'une combobox

Linebaker Messages postés 53 Statut Membre -  
Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonsoir,

En sélectionnant l'entête d'une colonne avec une combobox (c2:p2), je veux que le contenu de cette colonne soit effacé (genre Selection.Delete xlShiftToRight). Ex. : Je sélectionne D2, D1:D300 est effacé en déplaçant les autres colonnes vers la gauche.

Merci
A voir également:

7 réponses

Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   1 466
 
Bonjour,
Pouvez-vous préciser où se trouve la [Combobox] ...... ?

0
Linebaker Messages postés 53 Statut Membre 1
 
Bonjour,

Il se trouve dans un userform :

Private Sub UserForm_Initialize()
With Sheets("Commandes Stinson")
ComboBox1.Column = .Range("c2", .Range("p2").End(xlToLeft)).Value
End With
End Sub

Et activer la cellule correspondante au choix dans le combobox :

Range(ActiveCell.Offset(-1, 0), ActiveCell.Offset(300)).Select
With Selection
Selection.Delete Shift:=xlToLeft
End With

Merci de m'aider
0
Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   1 466
 
Bonjour,
Merci pour l'information.
Ajuter ce code qui se déclenche lors d'un changement de valeur dans votre liste déroulante et supprime la colonne.
Private Sub ComboBox1_Change() 
Dim nom As String 
nom = Me.ComboBox1 
Range(nom).Offset(300).Select 
With Selection 
        Selection.Delete Shift:=xlToLeft 
End With 
End Sub


Salutations.
Le Pingou
0
Linebaker Messages postés 53 Statut Membre 1
 
Bonjour,

J'ai un qualificateur incorrect : Range((nom.Offset - 2), (300)).Select,

et si j'enlève mon offset, j'ai une erreur 1004 (méthode range a échouée)

Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   1 466
 
Bonjour,
Vous avez modifier :
Range((nom.Offset - 2), (300)).Select

Pourquoi ?

Qu'elles sont exactement les valeurs qui se trouvent dans votre liste déroulant?
0
Linebaker Messages postés 53 Statut Membre 1
 
Bonjour,

J'ai changer à -2 car mon combobox fait référence à la rangé 3 et je dois aussi effacer 1 à 300.

La cellule fait référence le combobox est en format date.

Merci
0
Le Pingou Messages postés 12656 Date d'inscription   Statut Contributeur Dernière intervention   1 466
 
Bonjour,
Merci pour l'information.
Vous dites : J'ai changer à -2 car mon combobox fait référence à la rangé 3
En principe c'est la valeur de la liste déroulante qui sert de référence et non pas la liste déroulante. De plus dans votre code d'initialisation vous avez la plage (C2 ....P2) donc il s'agit de la ligne 2 et non rangé 3 (note : une feuille à des lignes et des colonnes).
Si les valeurs de la liste déroulante sont des dates, comment vous avez déterminé la colonne dont vous voulez supprimer la plage (ligne : 1 à 300) ?


Salutations.
Le Pingou
0