Récup de données via VBA

Le
Noégor
Bonjour,

Je me permets de reposer ma question qui hier au soir à 20h était en
concurrence avec le SarkoShow.

Voulant récupérer des données à partir d'un dossier Excel fermé, j'ai trouvé
sur l'Excel lent site Excelabo le programme suivant :

" GeeDee d'après la macro XL4 de John Walkenbach",

qui fonctionne à merveille, mais maisune cellule qui est définie sur la
feuille originale dans le format "TEXTE" et qui est vide, se retrouve à
l'arrivée avec le chiffre "0".

Dans le VBA la variable est définie "As String". Pensant que l'erreur
pouvait provenir de cette définition, je l'ai modifiée comme "VARIANT", mais
malheureusement j'obtiens toujours des zéros lorsque les cellules sont
vides!

Comment faire pour que les définitions de l'original soient respectées?

Merci pour votre précieuse aide.

Noégor
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
isabelle
Le #18599681
bonjour Noégor,

est que tu utilise la méthode ExecuteExcel4Macro ?

isabelle

Noégor a écrit :
Bonjour,

Je me permets de reposer ma question qui hier au soir à 20h était en
concurrence avec le SarkoShow.

Voulant récupérer des données à partir d'un dossier Excel fermé, j'ai trouvé
sur l'Excel lent site Excelabo le programme suivant :

" GeeDee d'après la macro XL4 de John Walkenbach",

qui fonctionne à merveille, mais mais...une cellule qui est définie sur la
feuille originale dans le format "TEXTE" et qui est vide, se retrouve à
l'arrivée avec le chiffre "0".

Dans le VBA la variable est définie "As String". Pensant que l'erreur
pouvait provenir de cette définition, je l'ai modifiée comme "VARIANT", mais
malheureusement j'obtiens toujours des zéros lorsque les cellules sont
vides!...

Comment faire pour que les définitions de l'original soient respectées?

Merci pour votre précieuse aide.

Noégor





Youky \(BJ\)
Le #18600081
Voici un exemple avec ExecuteExcel4Macro
le fichier doit être enregistré dans le même répertoire

et renseigner Fichier et onglet
Chemin = "'" & ThisWorkbook.Path & ""
Fichier = "[charpente.xls]"
Onglet = "Tuiles'!"
For k = 6 To 100 'commencer à lire à la ligne 6
ChampALire = "R" & k & "C1" ' k est la ligne incrémentée C1 est col A C2 est
B ainsi de suite
ChampALire2 = "R" & k & "C2"
i = i + 1
Cells(i, 1) = Application.ExecuteExcel4Macro(Chemin & Fichier & Onglet &
ChampALire)
Cells(i, 2) = Application.ExecuteExcel4Macro(Chemin & Fichier & Onglet &
ChampALire2)
If Cells(i, 1) = 0 Then Cells(i, 1) = "": Cells(i, 2) = ""
Next

--
Youky (BJ)


"Noégor" e%
Bonjour,

Je me permets de reposer ma question qui hier au soir à 20h était en
concurrence avec le SarkoShow.

Voulant récupérer des données à partir d'un dossier Excel fermé, j'ai
trouvé
sur l'Excel lent site Excelabo le programme suivant :

" GeeDee d'après la macro XL4 de John Walkenbach",

qui fonctionne à merveille, mais mais...une cellule qui est définie sur la
feuille originale dans le format "TEXTE" et qui est vide, se retrouve à
l'arrivée avec le chiffre "0".

Dans le VBA la variable est définie "As String". Pensant que l'erreur
pouvait provenir de cette définition, je l'ai modifiée comme "VARIANT",
mais
malheureusement j'obtiens toujours des zéros lorsque les cellules sont
vides!...

Comment faire pour que les définitions de l'original soient respectées?

Merci pour votre précieuse aide.

Noégor




Noégor
Le #18600481
Bonjour Isabelle,
Effectivement j'exécute la fonction :GetValue = ExecuteExcel4Macro(Arg).
Merci de ton aide
Noégor
"isabelle" a écrit dans le message de
news:
bonjour Noégor,

est que tu utilise la méthode ExecuteExcel4Macro ?

isabelle

Noégor a écrit :
> Bonjour,
>
> Je me permets de reposer ma question qui hier au soir à 20h était en
> concurrence avec le SarkoShow.
>
> Voulant récupérer des données à partir d'un dossier Excel fermé, j'ai


trouvé
> sur l'Excel lent site Excelabo le programme suivant :
>
> " GeeDee d'après la macro XL4 de John Walkenbach",
>
> qui fonctionne à merveille, mais mais...une cellule qui est définie sur


la
> feuille originale dans le format "TEXTE" et qui est vide, se retrouve à
> l'arrivée avec le chiffre "0".
>
> Dans le VBA la variable est définie "As String". Pensant que l'erreur
> pouvait provenir de cette définition, je l'ai modifiée comme "VARIANT",


mais
> malheureusement j'obtiens toujours des zéros lorsque les cellules sont
> vides!...
>
> Comment faire pour que les définitions de l'original soient respectées?
>
> Merci pour votre précieuse aide.
>
> Noégor
>
>
>


Noégor
Le #18600581
Bonjour Youky,
Merci pour le code, mais je voudrais qu'une cellule qui est à blanc au
départ doit être également à blanc à l'arrivée, or ce n'est pas le cas car
je récupère un zéro.
Exemple: si je récupère un fichier adresses, je ne veux pas que toutes les
lignes qui sont à blanc se retrouvent avec des zéros...
Par avance merci de votre aide.
Noégor
"Youky (BJ)" news:
Voici un exemple avec ExecuteExcel4Macro
le fichier doit être enregistré dans le même répertoire

et renseigner Fichier et onglet
Chemin = "'" & ThisWorkbook.Path & ""
Fichier = "[charpente.xls]"
Onglet = "Tuiles'!"
For k = 6 To 100 'commencer à lire à la ligne 6
ChampALire = "R" & k & "C1" ' k est la ligne incrémentée C1 est col A C2


est
B ainsi de suite
ChampALire2 = "R" & k & "C2"
i = i + 1
Cells(i, 1) = Application.ExecuteExcel4Macro(Chemin & Fichier & Onglet &
ChampALire)
Cells(i, 2) = Application.ExecuteExcel4Macro(Chemin & Fichier & Onglet &
ChampALire2)
If Cells(i, 1) = 0 Then Cells(i, 1) = "": Cells(i, 2) = ""
Next

--
Youky (BJ)


"Noégor"

news:
e%
> Bonjour,
>
> Je me permets de reposer ma question qui hier au soir à 20h était en
> concurrence avec le SarkoShow.
>
> Voulant récupérer des données à partir d'un dossier Excel fermé, j'ai
> trouvé
> sur l'Excel lent site Excelabo le programme suivant :
>
> " GeeDee d'après la macro XL4 de John Walkenbach",
>
> qui fonctionne à merveille, mais mais...une cellule qui est définie sur


la
> feuille originale dans le format "TEXTE" et qui est vide, se retrouve à
> l'arrivée avec le chiffre "0".
>
> Dans le VBA la variable est définie "As String". Pensant que l'erreur
> pouvait provenir de cette définition, je l'ai modifiée comme "VARIANT",
> mais
> malheureusement j'obtiens toujours des zéros lorsque les cellules sont
> vides!...
>
> Comment faire pour que les définitions de l'original soient respectées?
>
> Merci pour votre précieuse aide.
>
> Noégor
>
>




isabelle
Le #18601301
bonjour Noégor,

Youki a donné comme exemple :

If Cells(i, 1) = 0 Then Cells(i, 1) = "": Cells(i, 2) = ""

ça pourrait être aussi :

If Cells(i, 1) = 0 Then Cells(i, 1).clear

If Cells(i, 2) = 0 Then Cells(i, 2).clear

ou bien :

If MaVar = 0 Then MaVar = ""

isabelle




Noégor a écrit :
Bonjour Isabelle,
Effectivement j'exécute la fonction :GetValue = ExecuteExcel4Macro(Arg).
Merci de ton aide
Noégor
"isabelle" a écrit dans le message de
news:

bonjour Noégor,

est que tu utilise la méthode ExecuteExcel4Macro ?

isabelle

Noégor a écrit :

Bonjour,

Je me permets de reposer ma question qui hier au soir à 20h était en
concurrence avec le SarkoShow.

Voulant récupérer des données à partir d'un dossier Excel fermé, j'ai





trouvé

sur l'Excel lent site Excelabo le programme suivant :

" GeeDee d'après la macro XL4 de John Walkenbach",

qui fonctionne à merveille, mais mais...une cellule qui est définie sur





la

feuille originale dans le format "TEXTE" et qui est vide, se retrouve à
l'arrivée avec le chiffre "0".

Dans le VBA la variable est définie "As String". Pensant que l'erreur
pouvait provenir de cette définition, je l'ai modifiée comme "VARIANT",





mais

malheureusement j'obtiens toujours des zéros lorsque les cellules sont
vides!...

Comment faire pour que les définitions de l'original soient respectées?

Merci pour votre précieuse aide.

Noégor













Noégor
Le #18600571
Merci Isabelle, je n'avais pas remarqué la dernière ligne du code de Youky.
Bon week-end.
Noégor.
"isabelle" a écrit dans le message de
news:
bonjour Noégor,

Youki a donné comme exemple :

If Cells(i, 1) = 0 Then Cells(i, 1) = "": Cells(i, 2) = ""

ça pourrait être aussi :

If Cells(i, 1) = 0 Then Cells(i, 1).clear

If Cells(i, 2) = 0 Then Cells(i, 2).clear

ou bien :

If MaVar = 0 Then MaVar = ""

isabelle




Noégor a écrit :
> Bonjour Isabelle,
> Effectivement j'exécute la fonction :GetValue ExecuteExcel4Macro(Arg).
> Merci de ton aide
> Noégor
> "isabelle" a écrit dans le message de
> news:
>
>> bonjour Noégor,
>>
>> est que tu utilise la méthode ExecuteExcel4Macro ?
>>
>> isabelle
>>
>> Noégor a écrit :
>>
>>> Bonjour,
>>>
>>> Je me permets de reposer ma question qui hier au soir à 20h était en
>>> concurrence avec le SarkoShow.
>>>
>>> Voulant récupérer des données à partir d'un dossier Excel fermé, j'ai
>>>
> trouvé
>
>>> sur l'Excel lent site Excelabo le programme suivant :
>>>
>>> " GeeDee d'après la macro XL4 de John Walkenbach",
>>>
>>> qui fonctionne à merveille, mais mais...une cellule qui est définie


sur
>>>
> la
>
>>> feuille originale dans le format "TEXTE" et qui est vide, se retrouve


à
>>> l'arrivée avec le chiffre "0".
>>>
>>> Dans le VBA la variable est définie "As String". Pensant que l'erreur
>>> pouvait provenir de cette définition, je l'ai modifiée comme


"VARIANT",
>>>
> mais
>
>>> malheureusement j'obtiens toujours des zéros lorsque les cellules sont
>>> vides!...
>>>
>>> Comment faire pour que les définitions de l'original soient


respectées?
>>>
>>> Merci pour votre précieuse aide.
>>>
>>> Noégor
>>>
>>>
>>>
>>>
>
>
>


Publicité
Poster une réponse
Anonyme