Page 1 sur 1
test cellule vide...

Publié:
06 Juin 2003 à 10:43
par leila
est que qqun saurait comment on fait pour tester si une cellule d'un tableau excel est non videj'ai testéif xlsSheet.Cells(1,i).Value <> " "etc MAIS ca ne marche pas!j'ai tenté aussi de remplacer <> " " par is NothingMAIS ca ne marche pas non plus.....Comment faire?MerciLeila
Re: test cellule vide...

Publié:
06 Juin 2003 à 11:02
par Stephane Maillard
Bonjour,Avez vous essayez

im sTmpCell As StringsTmpCell = CStr(xlsSheet.Cells(1, i).Value)If sTmpCell = "" Then ' La cellule est videElse ' La cellule est pleineEnd if[%sig%]
Re: test cellule vide...

Publié:
06 Juin 2003 à 11:09
par Stephane Maillard
Re,Si vous pouvez attendre un peu, je fais un programme de test.[%sig%]
Re: test cellule vide...

Publié:
06 Juin 2003 à 12:13
par Stephane Maillard
Re,Voilà le code exemple qui fonctionne parfaitement chez moi :Sub Test() Dim xlFilename As String xlFilename = "C:\Test.xls" Dim One As String Dim Col As Integer Dim tCol() As String Dim Compteur As Integer Dim Excel As Variant Dim xlWorkbook As Variant Dim xlSheet As Variant Set Excel = CreateObject( "Excel.Application" ) Excel.Visible = False Excel.Workbooks.Open xlFilename Set xlWorkbook = Excel.ActiveWorkbook Set xlSheet = xlWorkbook.ActiveSheet Col = 0 compteur = 0 Do While True With xlSheet Col = Col + 1 If .Cells( 1, col).Value = "" Then' Messagebox "Vide" ' Pour les tests de valeur Exit Do Else' Messagebox "Plein" ' Pour les tests de valeur If col = 1 Then compteur = 0 Redim tCol(compteur) As String tcol(compteur) = .Cells( 1, col).Value Else compteur = compteur + 1 Redim Preserve tcol(compteur) As String tcol(compteur) = .Cells( 1, col).Value End If End If End With Loop xlWorkbook.Close False Excel.Quit Set Excel = NothingEnd Sub[%sig%]
Re: test cellule vide...

Publié:
06 Juin 2003 à 12:33
par Stephane Maillard
C'est encore moi le Dim One As String n'est pas nécessaire, j'ai oublier de le retirer avant de transmettre le code.[%sig%]
Re: test cellule vide...

Publié:
06 Juin 2003 à 12:51
par asx9
c'est le if xlsSheet.Cells(1,i).Value <> " "qui ne va pas, il faut mettre "" au lieu de " ", sinon sous excel le " " correspond également à 0 et non à une cellule vide.
Re: test cellule vide...

Publié:
06 Juin 2003 à 13:05
par Stephane Maillard
Bonjour,C'est ce que j'ai pensé aussi, mais non !Le problème c'est que quand du fait un Redim sur une variable qui n'est pas encore en tableau tu as le message 'subscript out of range', c'est pour cela que j'ai deux compteur 'Col' Et 'Compteur', au début le pb je le traité de tête et voyant que cela ne fonctionnait pas, j'ai réecris le programme.Car en utilisant le premier programme le message d'erreur vient sur cette ligne 'tCol(i+1) = xlsSheet.Cells (1, i +1 ).Value' avant le redim de la fin de la routine sur l'autre post.[%sig%]
Re: test cellule vide...

Publié:
06 Juin 2003 à 15:11
par leila
oui c'est bon je l'ai retiré!le programme marche a merveille! MERCIje veux ensuite utiliser dans une autre procédure la somme finale contenue dans la variable compteur car je dois l'utiliser comme nombre max de colonnes.. Mais je n'ai pas réussi, le message d'erreur aue j'obtiens est :subscript out of range!
Re: test cellule vide...

Publié:
06 Juin 2003 à 15:37
par Stephane Maillard
Re,Si ce n'est pas indiscret peut tu me fournir ton code complet et un exemple de fichier Excel pour regardé ce qui ne va pas.Voici mon mail perso :
stephane.maillard@rixy-software.comet mon site :
www.rixy-software.comSurtout n'oublie de marquer en commentaire la ligne qui fait défaut.[%sig%]