OVH Cloud OVH Cloud

amelioration macro - formule

10 réponses
Avatar
Philippe B.
Bonjour,
Je travaille actuelement sur une petit macro, j'ai une partie que je voudrai
amélioré pour la rendre plus efficace et plus rapide.

Mon programme est pour vérifier le status des factures - En préparation,
Facture, Devis, Annulation ....

Chaque fichier comporte une cellule nommé order_progress

J'utilise actuelement la formule suivante.

[Status].FormulaR1C1 = "='" & address_order & [orderid] & ".xls" &
"'!order_progress"

Elle fonctionne très bien mais au lieux d'avoir la valeur j'ai la formule et
le lien avec le fichier. Je voudrai seulement extraire la valeur sans avoir a
ouvrir le fichier et garder aucun lien. Est ce possible de manière simple ?

Merci de votre aide.
Cordialement,
Philippe

--
Cordialement,
Philippe B.

10 réponses

Avatar
JLuc
*Bonjour Philippe B.*,


[Status].FormulaR1C1 = "='" & address_order & [orderid] & ".xls" &
"'!order_progress"


[Status] = _
Workbooks(address_order & [orderid] & ".xls").Range("order_progress")
Devrait le faire, dis nous

--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O

Avatar
ABED HADDOU
Pardonne moi Philippe juste pour dire merci à JLuc et de lui dire que sa
proposition et celle de anounymousA relative à Tableau(Array() ça fonctionne
merci beaucoup une autre fois
à bientôt.

Abed_H



*Bonjour Philippe B.*,


[Status].FormulaR1C1 = "='" & address_order & [orderid] & ".xls" &
"'!order_progress"


[Status] = _
Workbooks(address_order & [orderid] & ".xls").Range("order_progress")
Devrait le faire, dis nous

--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O






Avatar
Philippe B.
Merci pour votre rapide mais cela ne marche pas, il bug

address_order = "C:"
[Status] = Workbooks(address_order & [orderid] &
".xls").Range("order_progress")

pouvez encore m'aider ? je pense que c'est address_order qui patauge mais
j'essaye plein de variente mais il bugge tout le temps.

Merci pour votre aide.

Une petit variante a cette question au lieu de d'assimiler la valeur a une
cellule est il possible de l'assimiler a une variante uniquement?


Cordialement,
Philippe B.



*Bonjour Philippe B.*,


[Status].FormulaR1C1 = "='" & address_order & [orderid] & ".xls" &
"'!order_progress"


[Status] = _
Workbooks(address_order & [orderid] & ".xls").Range("order_progress")
Devrait le faire, dis nous

--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O






Avatar
JLuc
*Bonjour Philippe B.*,
Autant pour moi, les crochets sont a enlever :

address_order = "C:"
[Status] = Workbooks(address_order & Range("orderid") &
".xls").Range("order_progress")

Ca devrait aller mieux

Merci pour votre rapide mais cela ne marche pas, il bug

address_order = "C:"
[Status] = Workbooks(address_order & [orderid] &
".xls").Range("order_progress")

pouvez encore m'aider ? je pense que c'est address_order qui patauge mais
j'essaye plein de variente mais il bugge tout le temps.

Merci pour votre aide.

Une petit variante a cette question au lieu de d'assimiler la valeur a une
cellule est il possible de l'assimiler a une variante uniquement?


Cordialement,
Philippe B.



*Bonjour Philippe B.*,


[Status].FormulaR1C1 = "='" & address_order & [orderid] & ".xls" &
"'!order_progress"


[Status] = _
Workbooks(address_order & [orderid] & ".xls").Range("order_progress")
Devrait le faire, dis nous

--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O






--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O



Avatar
JLuc
*Bonjour ABED HADDOU*,

Tu devrais rester sur le meme fil pour dire que ca marche, j'avais deja
vu tes remerciments sur un autre fil :oÞ
Mais merci quand meme, c'est sympa pour le retour

Pardonne moi Philippe juste pour dire merci à JLuc et de lui dire que sa
proposition et celle de anounymousA relative à Tableau(Array() ça fonctionne
merci beaucoup une autre fois
à bientôt.

Abed_H


--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O

Avatar
Philippe B.
Re
Et encore merci pour toute l'attention que vous portez à mon problème,
malheureusement ca ne marche toujour pas. L'avez vous tester ?Car si oui ca
doit etre mon ordi.

Si vous avez la moindre idées pourquoi ca ne marche pas, merci de m'éclairer.

--
Cordialement,
Philippe B.



*Bonjour Philippe B.*,
Autant pour moi, les crochets sont a enlever :

address_order = "C:"
[Status] = Workbooks(address_order & Range("orderid") &
".xls").Range("order_progress")

Ca devrait aller mieux

Merci pour votre rapide mais cela ne marche pas, il bug

address_order = "C:"
[Status] = Workbooks(address_order & [orderid] &
".xls").Range("order_progress")

pouvez encore m'aider ? je pense que c'est address_order qui patauge mais
j'essaye plein de variente mais il bugge tout le temps.

Merci pour votre aide.

Une petit variante a cette question au lieu de d'assimiler la valeur a une
cellule est il possible de l'assimiler a une variante uniquement?


Cordialement,
Philippe B.



*Bonjour Philippe B.*,


[Status].FormulaR1C1 = "='" & address_order & [orderid] & ".xls" &
"'!order_progress"


[Status] = _
Workbooks(address_order & [orderid] & ".xls").Range("order_progress")
Devrait le faire, dis nous

--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O






--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O








Avatar
JLuc
*Bonjour Philippe B.*,
Je n'ai pas tester, et je pars pour un mariage :')
Quand je rentre, je teste. Par contre si tu peux nous mettre les
classeur sur www.cjoint.com (sans données confidentielles) ce sera peut
etre plus facile de te depanner

Re
Et encore merci pour toute l'attention que vous portez à mon problème,
malheureusement ca ne marche toujour pas. L'avez vous tester ?Car si oui ca
doit etre mon ordi.

Si vous avez la moindre idées pourquoi ca ne marche pas, merci de m'éclairer.

--
Cordialement,
Philippe B.



*Bonjour Philippe B.*,
Autant pour moi, les crochets sont a enlever :

address_order = "C:"
[Status] = Workbooks(address_order & Range("orderid") &
".xls").Range("order_progress")

Ca devrait aller mieux

Merci pour votre rapide mais cela ne marche pas, il bug

address_order = "C:"
[Status] = Workbooks(address_order & [orderid] &
".xls").Range("order_progress")

pouvez encore m'aider ? je pense que c'est address_order qui patauge mais
j'essaye plein de variente mais il bugge tout le temps.

Merci pour votre aide.

Une petit variante a cette question au lieu de d'assimiler la valeur a une
cellule est il possible de l'assimiler a une variante uniquement?


Cordialement,
Philippe B.



*Bonjour Philippe B.*,


[Status].FormulaR1C1 = "='" & address_order & [orderid] & ".xls" &
"'!order_progress"


[Status] = _
Workbooks(address_order & [orderid] & ".xls").Range("order_progress")
Devrait le faire, dis nous

--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O






--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O






--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O





Avatar
Philippe B.
j'ai jamais utiliser cjoint mais je vais essayé. Je vous envoie des que j'ai
compris comment faire.
Et très bon mariage.
--
Cordialement,
Philippe B.



*Bonjour Philippe B.*,
Je n'ai pas tester, et je pars pour un mariage :')
Quand je rentre, je teste. Par contre si tu peux nous mettre les
classeur sur www.cjoint.com (sans données confidentielles) ce sera peut
etre plus facile de te depanner

Re
Et encore merci pour toute l'attention que vous portez à mon problème,
malheureusement ca ne marche toujour pas. L'avez vous tester ?Car si oui ca
doit etre mon ordi.

Si vous avez la moindre idées pourquoi ca ne marche pas, merci de m'éclairer.

--
Cordialement,
Philippe B.



*Bonjour Philippe B.*,
Autant pour moi, les crochets sont a enlever :

address_order = "C:"
[Status] = Workbooks(address_order & Range("orderid") &
".xls").Range("order_progress")

Ca devrait aller mieux

Merci pour votre rapide mais cela ne marche pas, il bug

address_order = "C:"
[Status] = Workbooks(address_order & [orderid] &
".xls").Range("order_progress")

pouvez encore m'aider ? je pense que c'est address_order qui patauge mais
j'essaye plein de variente mais il bugge tout le temps.

Merci pour votre aide.

Une petit variante a cette question au lieu de d'assimiler la valeur a une
cellule est il possible de l'assimiler a une variante uniquement?


Cordialement,
Philippe B.



*Bonjour Philippe B.*,


[Status].FormulaR1C1 = "='" & address_order & [orderid] & ".xls" &
"'!order_progress"


[Status] = _
Workbooks(address_order & [orderid] & ".xls").Range("order_progress")
Devrait le faire, dis nous

--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O






--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O






--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O










Avatar
JLuc
*Bonjour Philippe B.*,
J'ai eu le temps de tester, et, effectivement ca ne fonctionne pas
comme il faut.
Essaie ceci et dis nous si ca te convient.
Sinon, à demain soir :oÞ

Sub essai()
address_order = "d:FichiersExcelForums"
nomfichier = Range("orderid") & ".xls"
classeur = address_order & nomfichier & ".xls" '
Workbooks.Open classeur
ThisWorkbook.Activate
[Status] = Workbooks(nomfichier).Sheets("Liste
fichiers").Range("order_progress")
Workbooks(nomfichier).Close
End Sub

Change le chemin...

j'ai jamais utiliser cjoint mais je vais essayé. Je vous envoie des que j'ai
compris comment faire.
Et très bon mariage.
--
Cordialement,
Philippe B.



*Bonjour Philippe B.*,
Je n'ai pas tester, et je pars pour un mariage :')
Quand je rentre, je teste. Par contre si tu peux nous mettre les
classeur sur www.cjoint.com (sans données confidentielles) ce sera peut
etre plus facile de te depanner

Re
Et encore merci pour toute l'attention que vous portez à mon problème,
malheureusement ca ne marche toujour pas. L'avez vous tester ?Car si oui ca
doit etre mon ordi.

Si vous avez la moindre idées pourquoi ca ne marche pas, merci de
m'éclairer.

--
Cordialement,
Philippe B.



*Bonjour Philippe B.*,
Autant pour moi, les crochets sont a enlever :

address_order = "C:"
[Status] = Workbooks(address_order & Range("orderid") &
".xls").Range("order_progress")

Ca devrait aller mieux

Merci pour votre rapide mais cela ne marche pas, il bug

address_order = "C:"
[Status] = Workbooks(address_order & [orderid] &
".xls").Range("order_progress")

pouvez encore m'aider ? je pense que c'est address_order qui patauge mais
j'essaye plein de variente mais il bugge tout le temps.

Merci pour votre aide.

Une petit variante a cette question au lieu de d'assimiler la valeur a
une cellule est il possible de l'assimiler a une variante uniquement?


Cordialement,
Philippe B.



*Bonjour Philippe B.*,


[Status].FormulaR1C1 = "='" & address_order & [orderid] & ".xls" &
"'!order_progress"


[Status] = _
Workbooks(address_order & [orderid] & ".xls").Range("order_progress")
Devrait le faire, dis nous

--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O






--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O






--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O






--
____
( O | O )
--
_oooO_ JLuc _Oooo_

O-O







Avatar
docm
Bonjour.

Conserve cette formule qui marche bien:
address_order = "C:"
[Status].FormulaR1C1 = "='" & address_order & [orderid] & ".xls" &
"'!order_progress"

Ajoute ce qui suit qui est obtenu par Copier/Collage spécial - Valeurs:

Set r = [Status]
With r

.Copy
.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:úlse
End With

Amicalement

docm


"Philippe B." wrote in message
news:
Bonjour,
Je travaille actuelement sur une petit macro, j'ai une partie que je
voudrai
amélioré pour la rendre plus efficace et plus rapide.

Mon programme est pour vérifier le status des factures - En préparation,
Facture, Devis, Annulation ....

Chaque fichier comporte une cellule nommé order_progress

J'utilise actuelement la formule suivante.

[Status].FormulaR1C1 = "='" & address_order & [orderid] & ".xls" &
"'!order_progress"

Elle fonctionne très bien mais au lieux d'avoir la valeur j'ai la formule
et
le lien avec le fichier. Je voudrai seulement extraire la valeur sans
avoir a
ouvrir le fichier et garder aucun lien. Est ce possible de manière simple
?

Merci de votre aide.
Cordialement,
Philippe

--
Cordialement,
Philippe B.