Sélection de cellules vides dans colonne

gourdin

XLDnaute Impliqué
Bonjour,

Problème de sélection de cellules vides par macro
(Code : Selection.SpecialCells(xlCellTypeBlanks).Select)

Voir fichier joint explicatif

Merci de votre aide
 

Pièces jointes

  • Classeur1.xls
    35.5 KB · Affichages: 47
  • Classeur1.xls
    35.5 KB · Affichages: 53
  • Classeur1.xls
    35.5 KB · Affichages: 53
G

Guest

Guest
Re : Sélection de cellules vides dans colonne

Bonjour,

1 - il est préférable d'exposer le problème dans ton post de demande plutôt que d'obliger les répondeurs à ouvrir ton fichier.

2 - tes cellules n'étaient pas réellement vides.
3 - specialcell renvoie une erreur(normale) si aucun cellule ne correspond à la demande donc:
Code:
Sub selectionvide()
On Error Resume Next
Range("B3:B22").SpecialCells(xlCellTypeBlanks).Select
On Error GoTo 0
End Sub

A+
 
Dernière modification par un modérateur:

gourdin

XLDnaute Impliqué
Re : Sélection de cellules vides dans colonne

Merci

Quelle code me permettrait de sélectionner ces cellules avec des espaces que je croyais vide ?

Ou quelle code permettrait de rendre vides ces cellules avec des espaces ?

PS : désolé mais je pensais bien faire en envoyant un fichier joint.
 
G

Guest

Guest
Re : Sélection de cellules vides dans colonne

Re,

Le fichier joint c'est plutôt une bonne choses. Les explications qui vont avec, dans le post de demande c'est mieux.

Quant à tes cellules, ce ne sont pas des espaces quelles contiennent mais certainement un caractère non imprimable que je n'ai pas réussi à définir. Tes données viennent-elles d'une importation?
Selectionnes toutes tes cellules soit-disant vides et appuie sur "Suppr" cela suffira pour les 'nettoyer'.

A+
 

Staple1600

XLDnaute Barbatruc
Re : Sélection de cellules vides dans colonne

Bonjour à tous

gourdin
Joindre un fichier et mettre des explications détaillées dans le message où tu poses ta question vaut mieux que de joindre un fichier en disant d'aller voir les explications dans le fichier.
Je suppose que ce qu'hasco a voulu dire.
En tout cas, cela l'aura permis de le saluer au passage (et de lui dire qu'il manque un s quelque part dans son message ;) )

NB:ce point était plus explicite dans l'ancienne version de la charte du forum ;)

EDITION:
Damned! Hasco a été plus rapide ;)
C'est pas grave je me consolerai avec cette histoire de s ;)
 
Dernière édition:

gourdin

XLDnaute Impliqué
Re : Sélection de cellules vides dans colonne

Hasco,

Les cellules de la colonne sont le résultat d'un copier coller.

Mais comment faire pour que la macro sélectionne automatiquement ces cellules particulières et qui me paraissent vides (dans le fichier original elles sont nombreuses et non contiguës) ?.
 
G

Guest

Guest
Re : Sélection de cellules vides dans colonne

Re,

Alors, la macro ci-dessous nettoiera d'abord les cellules contenant du texte (même invisible) pour les vider de leur contenu puis sélectionnera les cellules vides restantes.

Code:
Sub selectionvide()
  On Error Resume Next
    With Range("B3:B22")
    'nettoie les cellules contenant du texte même invisible
        .SpecialCells(xlCellTypeConstants, 2).ClearContents
    'selectionne les cellule vide
        .SpecialCells(xlCellTypeBlanks).Select
    End With
On Error GoTo 0
    
End Sub

Mais vaudrait mieux sélectionner que des cellules qui contiennent que les données dont tu as besoin avant copiage/collage.

A+


@Staple mon ami, tu peux rire de mes fautes:) :) :) A+++
 
Dernière modification par un modérateur:

Staple1600

XLDnaute Barbatruc
Re : Sélection de cellules vides dans colonne

Re

Pour répondre à la question, une autre piste que celle d'Hasco
(qui me semble très destructrice sauf erreur de ma part, non ?)
NB: Je n'ai pas ouvert la PJ, donc la phrase ci-dessus est sans doute caduque ;) )
Et la macro sera à adapter (notamment la colonne à traiter, et la colonne où insérer la formule temporaire)
Code:
Sub Macro2()
Dim dl&
dl = Cells(Rows.Count, "A").End(3).Row
Range("B1:B" & dl).FormulaR1C1 = _
        "=IF(ISERR(SEARCH(CHAR(32),RC[-1]))*ISERR(SEARCH(CHAR(160),RC[-1]))=0,1,"""")"
Columns("B:B").SpecialCells(xlCellTypeFormulas, 1).EntireRow.Delete
Columns("B:B").Clear
End Sub

PS
:Hasco, je ne ris, ni me moque ;)
Mais SpecialCells marchera toujours mieux dans VBA avec le s ;)
 

job75

XLDnaute Barbatruc
Re : Sélection de cellules vides dans colonne

Bonjour gourdin, Hasco, JM,

Encore moins destructrice :

Code:
Sub selectionvide()
Dim c As Range, s As Range
For Each c In [B3:B22] 'plage à adapter
  If c = "" Then Set s = Union(c, IIf(s Is Nothing, c, s))
Next
If Not s Is Nothing Then s.Select
End Sub
A+
 

job75

XLDnaute Barbatruc
Re : Sélection de cellules vides dans colonne

Re,

Ou aussi avec le filtre automatique :

Code:
Sub selectionvide()
Application.ScreenUpdating = False
With [B2:B22]
  .AutoFilter 1, ""
  On Error Resume Next
  .Offset(1).Resize(.Count - 1).SpecialCells(xlCellTypeVisible).Select
  .Parent.AutoFilterMode = False
End With
End Sub
A+
 

Discussions similaires

Réponses
6
Affichages
136

Statistiques des forums

Discussions
314 647
Messages
2 111 533
Membres
111 192
dernier inscrit
F.Venne