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

Fermé
Linebaker Messages postés 51 Date d'inscription vendredi 23 novembre 2012 Statut Membre Dernière intervention 21 avril 2023 - Modifié par Linebaker le 23/11/2012 à 23:27
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 - 26 nov. 2012 à 09:01
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 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
24 nov. 2012 à 22:36
Bonjour,
Pouvez-vous préciser où se trouve la [Combobox] ...... ?

0
Linebaker Messages postés 51 Date d'inscription vendredi 23 novembre 2012 Statut Membre Dernière intervention 21 avril 2023 1
25 nov. 2012 à 22:34
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 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
Modifié par Le Pingou le 25/11/2012 à 23:30
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 51 Date d'inscription vendredi 23 novembre 2012 Statut Membre Dernière intervention 21 avril 2023 1
25 nov. 2012 à 23:41
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 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
25 nov. 2012 à 23:48
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 51 Date d'inscription vendredi 23 novembre 2012 Statut Membre Dernière intervention 21 avril 2023 1
26 nov. 2012 à 00:21
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 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
Modifié par Le Pingou le 26/11/2012 à 09:50
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