incrémentation des lettres

  • Initiateur de la discussion Initiateur de la discussion seb44tkt
  • Date de début Date de début

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 !

S

seb44tkt

Guest
Bonjour,

Pouvez vous m'aider svp?
Je recherche à faire quelque chose de plutot simple mais je perd pied 🙁
Je m'explique :
en A1 je n'ai rien, en B1 j'ai X, en C1 je n'ai rien, en D1 j'ai X.
Je voudrai que mes colonnes où je n'ai rien soient supprimées.
Pour le faire en ligne, il n'y a pas de problème mais en colonne, je ne sais pas comment incrémenter les lettres.

Voici ce que je ferrai si le problème était en ligne :
en A1 je n'ai rien, en A2 j'ai X, En A3 je n'ai rien, en A4 j'ai X.

ligne=1
While ("A" & ligne) = "A10"
If Range("A" & ligne) = "" Then
Rows("ligne:ligne").Select
Selection.Delete Shift:=xlUp
End If
ligne=ligne+1
Wend

J'espère être clair...
Merci de votre aide.
 
Re : incrémentation des lettres

Bonjour,

essaye ceci :
Code:
Dim i As Long
For i = Cells(1, Columns.Count).End(xlToLeft).Column To 1 Step -1
    If IsEmpty(Cells(1, i)) Then Columns(i).Delete
Next i
bonne journée
@+

Edition : bonjour francedemo
 
Re : incrémentation des lettres

Salut Seb44tkt 😉

Tu peux faire un truc du style
VB:
Sub Test()
  Dim Col As Integer, DCol As Integer
  ' Si tes entêtes de tableau sont usr la ligne 1
  ' Permet de trouver la dernière colonne de ton tableau
  DCol = Cells(1, Columns.Count).End(xlToLeft).Column
  ' For Col = DCol To 1
  ' Sinon en faisant simple
  For Col = 4 To 1
    ' Si la cellule de la ligne 1 et ce la colonne Col est vide
    If Cells(1, Col) = "" Then
      ' On supprimer la colonne entière
      Cells(1, Col).EntireColumn.Delete
    End If
  Next Col
End Sub

Edit : oups .. bonjour à tous 😉

A+
 
Re : incrémentation des lettres

Bonjour,

Hello tout le monde😀

Puisque c'est fait:
Code:
Sub SupprCol()
    Dim Col As Long
    'boucler sur  les colonnes 1 à 10 en testant la cellule de la ligne 1
    For Col = 1 To 10
        If IsEmpty(Cells(1, Col)) Then Columns(Col).Delete
    Next
End Sub
Sub SupprCol2()
'Plus rapide sur de nombreuses colonnes
    Dim plg As Range
    On Error Resume Next    'au cas où specialCells ne trouverait pas de cellules vide
    'Sélectionner les cellules vides de la ligne 1 colonne 1 à 10
    Set plg = Range(Cells(1, 1), Cells(1, 10)).SpecialCells(xlCellTypeBlanks)
    'Si des cellules vides ont été trouvées en ligne 1
    If Not plg Is Nothing Then plg.EntireColumn.Delete
End Sub

Tu as l'embarras du choix.
A+
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
454
Retour