Sub Test_Cellule()
Dim Ind, Fond, CoulText, StyPolice, Taille, Valeur
Dim Form, Formule, Adr, Aligh, LgPx
Dim AdrR1C1, AdrLg, AdrCol, Etat
Dim LgPt, ForLocal, ForR1C1, ForLocalR1C1
Valeur = ActiveCell.Value: Ind = ActiveCell.Interior.ColorIndex
Fond = ActiveCell.Font.Name: CoulText = ActiveCell.Font.ColorIndex
StyPolice = ActiveCell.Font.Bold: Taille = ActiveCell.Font.Size
Aligh = ActiveCell.HorizontalAlignment
Form = ActiveCell.NumberFormat: Adr = ActiveCell.Address
Formule = ActiveCell.Formula: ForLocal = ActiveCell.FormulaLocal
ForR1C1 = ActiveCell.FormulaR1C1: ForLocalR1C1 = ActiveCell.FormulaR1C1Local
If Aligh = -4131 Then Aligh = "Gauche"
If Aligh = -4108 Then Aligh = "Centré"
If Aligh = -4152 Then Aligh = "Droite"
AdrLg = ActiveCell.Row: AdrCol = ActiveCell.Column
AdrR1C1 = "Cells(" & AdrLg & "," & AdrCol & ")"
LgPx = Round(ActiveCell.Width * 1.333333)
LgPt = ActiveCell.ColumnWidth
Etat = VarType(ActiveCell.Value)
'MsgBox TypeName(Valeur)
If TypeName(Valeur) = "Error" Then Exit Sub 'error non traité
'------------------------------
Select Case Etat
Case 0: Etat = "Cellule vide": Case 1: Etat = "Aucune données valide"
Case 2: Etat = "Nombre entier (intéger)": Case 3: Etat = "Entier Long"
Case 4: Etat = "Nombre virgule flottante simple"
Case 5: Etat = "Nombre virgule flottante double"
Case 6: Etat = "Valeur monétaire"
Case 7: Etat = "Date = " & Format(ActiveCell, "dd/mm/yyyy hh:mm:ss")
Case 8: Etat = "Valeur chaîne (string)": Case 9: Etat = "Valeur Objet"
Case 10: Etat = "Valeur d'erreur " & N°Err = CInt(ActiveCell)
Case 11: Etat = "Valeur Booléenne"
Case 12: Etat = "Variant (Tableau de variant)": Case 13: Etat = "Objet accès aux données"
Case 14: Etat = "Valeur décimale": Case 17: Etat = "Valeur Octet"
Case 36: Etat = "Variant définition utilisateur": Case 8192: Etat = "Tableau"
End Select
'---------------------
MsgBox "Valeur Cellule active = " & vbTab & ": " & Valeur & " (" & TypeName(Valeur) & ")" & vbNewLine _
& vbNewLine & "TypeName =" & vbTab & vbTab & ": " & TypeName(Valeur) _
& vbNewLine & "Etat Cellule =" & vbTab & vbTab & ": " & Etat _
& vbNewLine & "Couleur Index fond cellule = " & vbTab & ": " & Ind _
& vbNewLine & "Nom du Font (Police) = " & vbTab & ": " & Fond _
& vbNewLine & "Couleur du Texte = " & vbTab & vbTab & ": " & CoulText _
& vbNewLine & "Style police (Bold) = " & vbTab & vbTab & ": " & StyPolice _
& vbNewLine & "Taille Police (size) = " & vbTab & vbTab & ": " & Taille _
& vbNewLine & "Alignement H = " & vbTab & vbTab & ": " & Aligh _
& vbNewLine & "Format cellule = " & vbTab & vbTab & ": " & Form _
& vbNewLine & "Adresse cellule = " & vbTab & vbTab & ": " & Adr _
& vbNewLine & "Adresse cellule (R1C1) = " & vbTab & ": " & AdrR1C1 _
& vbNewLine & "Largeur Cellule en (Pixel) = " & vbTab & ": " & LgPx _
& vbNewLine & "Largeur Cellule en (point) = " & vbTab & ": " & LgPt _
& vbNewLine & "Formula = " & vbTab & vbTab & ": " & Formule _
& vbNewLine & "FormulaLocal = " & vbTab & vbTab & ": " & ForLocal _
& vbNewLine & "FormulaR1C1 = " & vbTab & vbTab & ": " & ForR1C1 _
& vbNewLine & "FormulaR1C1Local = " & vbTab & ": " & ForR1C1, , "Test sur Cellule"
End Sub