Contenu cellule fichier sans l'ouvrir

Le
Bernard Flavignard
Bonjour,
En VBA je souhaiterais effectuer un test
For i = 1 to 200
If "T:Guidon-chalettoislicences20092009-12-25-licencies-guidon.xls"
dans la feuille "Licenciés" et pour la cellule Ai, la valeur est "E3" alors
.
..
Ceci sans ouvrir le fichier en question
La syntaxe de le ligne du test me pose problème.
J'ai bien trouvé de l'aide sur excelabo, mais je ne parviens pas à mettre
ceci en forme correctement.
Merci à celle ou celui qui pourra m'aider.
Cordialement
--
Bernard Flavignard
www.guidonchalettois.fr
www.hutchinsonopentour.fr
__o
_`<,_
( )/ ( )
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
JB
Le #20835121
Bonjour,

Utiliser ADO

http://boisgontierjacques.free.fr/pages_site/ado.htm

JB
http://boisgontierjacques.free.fr/On 25 déc, 22:56, "Bernard
Flavignard"
Bonjour,
En VBA je souhaiterais effectuer un test
For i = 1 to 200
    If  "T:Guidon-chalettoislicences20092009-12-25-licencies-gu idon.xls"
dans la feuille "Licenciés" et pour la cellule Ai, la valeur est "E3" a lors
....
.....
Ceci sans ouvrir le fichier en question
La syntaxe de le ligne du test me pose problème.
J'ai bien trouvé de l'aide sur excelabo, mais je ne parviens pas à me ttre
ceci en forme correctement.
Merci à celle ou celui qui pourra m'aider.
Cordialement
--
Bernard Flavignardwww.guidonchalettois.frwww.hutchinsonopentour.fr
     __o
  _`<,_
(   )/ (   )


Caetera
Le #20835881
Bernard Flavignard" 4b35e8dd$0$903$
J'avais oublié de dire que "E3" était en fait une chaine de caractères et non
la référence à une cellule.
Et si je met
If [IV65536] = "E1" Then
J'ai bien entendu une incompatibilité de type.



*********************
Si tu es bien sur la feuille contenant [IV65536] au moment de l'exécution, je ne
vois aucune raison (de principe) à une erreur !
En exécutant pas à pas (F8) vérifie bien que [IV65536] retourne les différentes
valeurs de la plage (fermée) à parcourir
Autre chose à vérifier : l'exacte syntaxe du chemin d'accès
............

Etc
Caetera
Le #20835871
>Finalement j'ai trouvé ce que je souhaitais ou presque.
A chaque fois que mamacro passe sur cette condition, j'ai une boite de dialogue
me demandant de Mettre à jour les valeurs de mon fichier.
Comment ne pas avoir cette boite, qui bien entendu bloque la macro.



***************************

application.DisplayAlerts = false
.....les instructions intermédiaires
application.DisplayAlerts = True

Etc
Bernard Flavignard
Le #20835961
Merci de m'aider.
Pour le message d'alerte c'est Ok.
Dans le classeur de la macro,
Pour i = 25, voici le contenu de la cellule IV65536
='T:Guidon-chalettoislicences2009[2009-12-25-licencies-guidon.xls]Licenciés'!$A$25
et ce qu'elle affiche
#REF!

--
Bernard Flavignard
www.guidonchalettois.fr
www.hutchinsonopentour.fr
__o
_`<,_
( )/ ( )

"Caetera"
>Finalement j'ai trouvé ce que je souhaitais ou presque.
A chaque fois que mamacro passe sur cette condition, j'ai une boite de
dialogue me demandant de Mettre à jour les valeurs de mon fichier.
Comment ne pas avoir cette boite, qui bien entendu bloque la macro.



***************************

application.DisplayAlerts = false
.....les instructions intermédiaires
application.DisplayAlerts = True

Etc



Bernard Flavignard
Le #20837001
Bonjour,
Comme d'habitude, inutile de s'entêter, j'ai laissé reposer tout ceci en
allant faire quelques courses.
Au retour j'ai repirs ça calmement et tout fonctionne.
Un grand merci à vous 2.
Encore une petite option, plutôt que de mettre le résultat dans la dernière
cellule de ma feuille active, pourrais-je le mettre dans une variable VBA?
Voici mon code dans lequel je paramètre le répertoire et le nom du fichier
excel, c'est plus souple.

Sub remplir_bordereau()
'Choisir le fichier des licenciés à lire
With Feuille1.CommonDialog1
'.CancelError = True
.InitDir = "T:Guidon-chalettoislicences"
'masquer la zone lecture seule et le fichier doit exister
.Flags = cdlOFNHideReadOnly + cdlOFNFileMustExist
'selection multiple possible et aspect Explorateur windows
'.Flags = cdlOFNAllowMultiselect + cdlOFNExplorer
.DialogTitle = "Fichier des licenciés .XLS"
'mise à blanc de la zone de saisie
.Filename = ""
.Filter = "Fichiers Excel (*.xls)|*.xls"
.ShowOpen
End With
Application.DisplayAlerts = False
nom_complet_fichier = Feuille1.CommonDialog1.Filename
nom_fichier = Feuille1.CommonDialog1.FileTitle
nom_repertoire = Mid$(Feuille1.CommonDialog1.Filename, 1,
Len(Feuille1.CommonDialog1.Filename) -
Len(Feuille1.CommonDialog1.FileTitle))
For i = 1 To 200
[IV65536] = "='" & nom_repertoire & "[" & nom_fichier & "]" &
"Licenciés" & "'!R" & i & "C1"
If [IV65536] = "E3" Then
MsgBox "Ok"
End If
Next
Application.DisplayAlerts = True
Exit Sub

Je préfèrerais écrire
ma_variable = "='" & nom_repertoire & "[" & nom_fichier & "]" &
"Licenciés" & "'!R" & i & "C1"
if ma_varible = "E3" then
......
Cordialement
--
Bernard Flavignard
www.guidonchalettois.fr
www.hutchinsonopentour.fr
__o
_`<,_
( )/ ( )

"Caetera"
>Finalement j'ai trouvé ce que je souhaitais ou presque.
A chaque fois que mamacro passe sur cette condition, j'ai une boite de
dialogue me demandant de Mettre à jour les valeurs de mon fichier.
Comment ne pas avoir cette boite, qui bien entendu bloque la macro.



***************************

application.DisplayAlerts = false
.....les instructions intermédiaires
application.DisplayAlerts = True

Etc



Publicité
Poster une réponse
Anonyme