|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Nouveau Membre du Club
![]() Inscription : février 2007 Messages : 103 ![]() |
Bonjour,
J'ai des liens sur 8000 classeurs (voir peut-être même plus) que je dois modifier. Si je modifie directement dans Excel, pas de problème mais si je le fais par VBA, il ne veut tout simplement pas le faire. Quelqu'un à-t-il une idée ? Voici le code Code :
|
||
|
|
00
|
|
|
#2 | ||
|
Nouveau Membre du Club
![]() Inscription : février 2007 Messages : 103 ![]() |
Voilà, j'ai des améliorations, mais ça ne marche toujours pas.
Voici la ligne vba Code :
Voici le résultat sur excel : Code :
=SI(B6="";"";INDEX('O:\o\pd\pre\[Base outils Fred.xls]TOTAL'!B:D;EQUIV(B7;'O:\o\pd\pre\[Base outils Fred.xls]TOTAL'!D:D;);EQUIV('O:\o\pd\pre\[Base outils Fred.xls]TOTAL'!'B2';'O:\o\pd\pre\[Base outils Fred.xls]TOTAL'!'B2':'D2')))
|
||
|
|
00
|
|
|
#3 |
|
Nouveau Membre du Club
![]() Inscription : février 2007 Messages : 103 ![]() |
Ben voilà, mon problème d'apostrophe est bon, il suffit de mettre les lien en r1c1
Code :
"=si(R[-2]C="""","""",INDEX('O:\o\pd\pre\[Base outils Fred.xls]TOTAL'!r1c2:r10000c4,EQUIV(R[-1]C,'O:\o\pd\pre\[Base outils Fred.xls]TOTAL'!r1c4:r10000c4,),EQUIV('O:\o\pd\pre\[Base outils Fred.xls]TOTAL'!r2c2,'O:\o\pd\pre\[Base outils Fred.xls]TOTAL'!r2c2:r2c4)))" Si je rentre dans la cellule, que je fais simplement ENTER, ça marche. Comment faire cela en VBA. Si j'enregistre une macro pour faire cela, j'ai une erreur a l'enregistrement de la macro "IMPOSSIBLE D'ENREGISTRER" |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Inscription : janvier 2007 Messages : 1 167 ![]() |
Bonjour
as tu regardé du coté de formula= ou peut être :bbblllaaabla +chr$(13) Daranc |
|
|
00
|
|
|
#5 | |
|
Nouveau Membre du Club
![]() Inscription : février 2007 Messages : 103 ![]() |
Citation:
Que je mette VALUE ou FORMULA, j'ai toujours le même problèmes. Par contre, j'ai pas essayé avec le +chr$(13) J'ai essayé avec "Application.SendKeys "maformule" + "{enter}" Mais là, ça marche une fois et après, ça gicle à tous les coups sur la ligne A7, je comprend pas pourquoi. Bon, la je suis en vacance jusqu'à mardi, donc je verrai ça mardi prochain Merci |
|
|
|
00
|
|
|
#6 | ||
|
Membre éclairé
![]() Inscription : avril 2006 Messages : 503 ![]() |
Petite question: qu'est-ce que tu appelles un "lien" ? Un lien cliquable ?
Si c'est le cas, voici comment je fais, sinon sorry pour le bourdonnement Code :
|
||
|
|
00
|
|
|
#7 | |
|
Nouveau Membre du Club
![]() Inscription : février 2007 Messages : 103 ![]() |
Citation:
J'ai une base de donné d'outils dans un classeur excel, et, sur 8000 autres classeurs lorsque je rentre les N°, ça me met automatiquement toute les descriptions. |
|
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() Inscription : janvier 2007 Messages : 1 167 ![]() |
Tu veux dire une liaison ?
tes 8000 classeurs sont liés à un classeur référent . Normalement la mise à jour de ces classeurs se fait lors de leur ouverture " le classeur que vous avez ouvert comporte des liaisons avec un autre classeur voulez vous mettre à jour ces liaisons" quel est le probleme Daranc |
|
|
00
|
|
|
#9 |
|
Nouveau Membre du Club
![]() Inscription : février 2007 Messages : 103 ![]() |
Oui, une liaison, et justement, le classeur ne se met pas à jour,
J'ai désespèrement le message "#nom?" qui reste dans ma cellule. Le simple fait de faire [F2] et [enter] me valide le lien, mais je n'arrive pas à le faire par vba |
|
|
00
|
|
|
#10 |
|
Membre éclairé
![]() Inscription : avril 2006 Messages : 503 ![]() |
Tu peux décrire ce que tu fais entre le [F2] et le [enter] ?
Quelle était la formule de ta cellule avant le [F2] et quelle est-elle après le [enter] ? |
|
|
00
|
|
|
#11 | |
|
Nouveau Membre du Club
![]() Inscription : février 2007 Messages : 103 ![]() |
Citation:
Avant : Code :
=SI(B6="";"";INDEX('[Base outils Fred.xls]TOTAL'!$B$1:$D$10000;EQUIV(B7;'[Base outils Fred.xls]TOTAL'!$D$1:$D$10000;);EQUIV('[Base outils Fred.xls]TOTAL'!$B$2;'[Base outils Fred.xls]TOTAL'!$B$2:$D$2))) Code :
=SI(B6="";"";INDEX('[Base outils Fred.xls]TOTAL'!$B$1:$D$10000;EQUIV(B7;'[Base outils Fred.xls]TOTAL'!$D$1:$D$10000;);EQUIV('[Base outils Fred.xls]TOTAL'!$B$2;'[Base outils Fred.xls]TOTAL'!$B$2:$D$2))) |
|
|
|
00
|
|
|
#12 | ||
|
Nouveau Membre du Club
![]() Inscription : février 2007 Messages : 103 ![]() |
en fait, ça marche MAIS.....seulement si il n'y a plus rien dérière la fin de ma macro.
Code :
si après la ligne 100120 je fais quoi que ce soit, ça ne marche plus |
||
|
|
00
|
|
|
#13 |
|
Nouveau Membre du Club
![]() Inscription : février 2007 Messages : 103 ![]() |
Il faudrait peut-être que je trouve un moyen de forcer l'execution de ma macro dans l'ordre définie. Et que, tant qu'elle n'a pas finie l'opération en cours elle ne passe pas au suivant.
|
|
|
00
|
|
|
#14 |
|
Nouveau Membre du Club
![]() Inscription : février 2007 Messages : 103 ![]() |
Je peux bien faire la fin de ma macro en tout dernier, mais il me faut de toute façon verrouiller mes cellules après. Donc le problème reste de toute façon
|
|
|
00
|
|
|
#15 |
|
Membre Expert
![]() Inscription : janvier 2007 Messages : 1 167 ![]() |
Et si tu ajoutais en fin de macro:
Calculate Daranc |
|
|
00
|
|
|
#16 | |
|
Nouveau Membre du Club
![]() Inscription : février 2007 Messages : 103 ![]() |
Citation:
Je désespère là. |
|
|
|
00
|
|
|
#17 | ||
|
Nouveau Membre du Club
![]() Inscription : février 2007 Messages : 103 ![]() |
En fait, il faudrait que je puisse stopper la macro tant que la partie ci-dessous n'est pas terminé.
Code :
Parce que si je met ne serais-ce que un n'importe ou après ma partie de code du ci-dessus, et bien cette partie part depuis le G9 |
||
|
|
00
|
|
|
#18 |
|
Nouveau Membre du Club
![]() Inscription : février 2007 Messages : 103 ![]() |
C'est bon, j'ai enfin réeussi. En fait, c'est complêtement con et débille. Excel est en français, mais vba en anglais. Si bien qu'excel met du temps à traduire et ne fais pas la mise à jour de la liaison. Ben voilà, il m'a suffit de remplacer mes "SI" en "IF" et "EQUIV" en "MATCH" et plus besoin du "applications.sendkeys" non plus Merci à tous ceux qui ont perdu de temps sur mon problème. |
|
|
00
|
|
|
#19 |
|
Membre éclairé
![]() Inscription : avril 2006 Messages : 503 ![]() |
Bien joué !
Faudrait se lister tous ces problèmes de multilangues dans Excel ! Des formules écrites pour un Excel en français ne fonctionne pas toujours avec des Excel en anglais ! C'est quand même con |
|
|
00
|
|
|
#20 |
|
Membre Expert
![]() Inscription : janvier 2007 Messages : 1 167 ![]() |
Ivr attention au parolement correct on ne dir plus "con" on dit:une mauvaise integration logique .. finalement t'as raison c'est con
Daranc |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com