recuperer format cellule (VB)

  • Initiateur de la discussion Initiateur de la discussion thib
  • 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 !

T

thib

Guest
bonsoir,

Comment peut-on récuperer le format d'une cellule en VB ?
L'objectif des de savoir si elle contient un nombre ou un texte ou si elle est vide.

merci.

thib
 
Bonjour,


1)
j'ai essayé la procédure CelluleFullStatisique proposé sur la page

http://www.excel-downloads.com/html/French/forum/read.php?f=1&i=41284&t=41229

en remplaçant "A5:A10" par "A1". Et là surprise, la boite de dialogue m'indique que la zone contient 1 cellule (c'est bon ! dont entre autre 74 cellules non vides, 21 cellules contenant une valeur numérique, ....

Bizarre, où est le problème ?




2)
Par ailleurs, je reprécise mon problème initial plus simple je pense (?!?) :
je voudrais faire un test sur le type de donnée contenu dans une cellule comme sur l'exemple suivant :

if (MaCellule.XXXX=xlNumbers) then ...

Que dois-je mettre à la place de XXXX pour récuperer le type de donnée dans la cellule ?
Est ce que "xlNumbers" est le bon mot-clef pour vérifier si le type est un nombre ?




merci d'avance pour votre aide.

thib.
 
bonsoir Thib

je viens de retester la procedure de @+Thierry et chez moi cela fonctionne pour une plage et une cellule seule

il me semble pourtant que cette macro correspond à ta demande , notamment les premieres lignes :

NonVide = Plage.SpecialCells(xlCellTypeConstants, 23).Count 'nombre de cellules non vides
ValVide = Plage.SpecialCells(xlCellTypeBlanks).Count 'nombre de cellules vides
ValText = Plage.SpecialCells(xlCellTypeConstants, xlTextValues).Count 'nombre de cellules contenant du texte
ValNume = Plage.SpecialCells(xlCellTypeConstants, xlNumbers).Count 'nombre de cellules numerique


sinon pour controler si une cellule est vide et si la valeur contenue est numerique , tu peux aussi essayer :

MsgBox IsNumeric(Range("A1")) 'renvoie vrai ou faux
MsgBox IsEmpty(Range("A1")) 'renvoie vrai ou faux


bonne soiree
MichelXld
 
- 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
136
  • Question Question
Microsoft 365 Imbrication
Réponses
2
Affichages
152
Réponses
4
Affichages
155
Réponses
12
Affichages
228
Retour