Bonjour,
voici le code que j'utilise pour récupérer des données dans un classeur fermé
avec la fonction Extrairevaleur suivante :
Tout fonctionne à merveille sauf que... si le nombre de caractères présents dans la cellule à récupérer est > 255 , j'ai "#valeur" comme contenu de la cellule...
Pourquoi ?
J'ai pourtant lu que "le type de données String peut stocker des chaînes de longueur fixe dont la longueur est comprise entre 0 et environ 63k de caractères et des chaînes dynamiques dont la longueur est comprise entre 0 et environ 2 milliards de caractères".
Où est-ce que le bas blesse ? du côté de "ExecuteExcel4Macro" ?... comment y remédier ?
Merci pour votre aide
voici le code que j'utilise pour récupérer des données dans un classeur fermé
Code:
...
Do Until valcode = "" Or valcode = 0
For i = 1 To 4
indexcol = Application.WorksheetFunction.Choose(i, "b", "c", "d", "e")
Worksheets("init").Cells(y - 26, i).Value = ExtraireValeur(sDossier, sFichier, sFeuille, indexcol & y)
Next i
y = y + 1
valcode = ExtraireValeur(sDossier, sFichier, sFeuille, "B" & y)
Loop
avec la fonction Extrairevaleur suivante :
Code:
Public Function ExtraireValeur(ByVal Dossier As String, ByVal Fichier As String, ByVal Feuille As String, ByVal Cellule As String)
Dim Argument As String
Argument = "'" & Dossier & "[" & Fichier & "]" & Feuille & "'!" & Range(Cellule).Address(, , xlR1C1)
ExtraireValeur = ExecuteExcel4Macro(Argument)
End Function
Tout fonctionne à merveille sauf que... si le nombre de caractères présents dans la cellule à récupérer est > 255 , j'ai "#valeur" comme contenu de la cellule...
Pourquoi ?
J'ai pourtant lu que "le type de données String peut stocker des chaînes de longueur fixe dont la longueur est comprise entre 0 et environ 63k de caractères et des chaînes dynamiques dont la longueur est comprise entre 0 et environ 2 milliards de caractères".
Où est-ce que le bas blesse ? du côté de "ExecuteExcel4Macro" ?... comment y remédier ?
Merci pour votre aide