tableaux liés entres plusieurs fichiers

raphael.hdg30

XLDnaute Nouveau
Bonjour à tous.
J'ai passé ma journée d'hier à chercher une réponse dans la mine incroyable qu'est ce forum mais ...
je ne doute donc pas que l'un ou l'autre d'entre vous pourra me renseigner.
j'utilise deux type de fichier :
- "données" qui comme son nom l'indiques est une base de données sur un serveur qu'une seule personne est en mesure de modifier.
- "satelite" qui est un fichier lié au premier mais qui peut être multiplié par "x". on trouve donc satelite1 - satelite2 - etc.
l'avantage comme vous l'aurez compris est qu'une seule modification dans les données permet une mise à jour de tous les satelites.

j'utilise donc beaucoup les fonctions RECHERCHEV() - NB.SI() - EQUIV() - INDEX()

toutes ces fonctions fonctionnent merveilleusement bien à condition que le fichier données soit ouvert !:)
Si ce fichier est fermé, ça se gâte !:mad:

la réaction n'est pas nom plus la même si ma base de donnée est en "tableau" ou en "plage"

pour ne pas trop baratiner, je vous joins deux fichiers de test. vous verrez que si vous les ouvrez tous les deux (restaurer si nécessaire les liens) il n'y a pas de problème, toutes le fonctions fonctionnent :p

fermez tout, n'ouvrez que satélite, répondez positivement à la demande de mise à jour des liens et là :confused:

merci d'avance pour vos explication ou votre aide.

bonne journée.

Raphaël.
 

Pièces jointes

  • satelite.xlsx
    11.6 KB · Affichages: 47
  • données.xlsx
    15.3 KB · Affichages: 55
  • données.xlsx
    15.3 KB · Affichages: 56
  • données.xlsx
    15.3 KB · Affichages: 61

Misange

XLDnaute Barbatruc
Re : tableaux liés entres plusieurs fichiers

Bonjour
C'est (hélas !) normal : tu aurais la même chose si tu utilisais la fonction décaler pour définir ta plage de façon dynamique avec la formule decaler.
On ne peut pas faire référence à une plage de taille variable (dynamique) située dans un classeur fermé, c'est une des limitations au fait de travailler avec les classeurs fermés.
Or un tableau excel est par nature dynamique. Donc tu dois choisir, plage fixe ou classeur ouvert.
 

raphael.hdg30

XLDnaute Nouveau
Re : tableaux liés entres plusieurs fichiers

Bonjour Misange.
Je te remercie pour la promptitude de ta réponse.
J'avais malheureusement cette intuition mais je me disais ... !
je suis donc condamné à définir des plages relativement importantes pour ne pas risquer d'être sans info dans mes satélites !
merci et bon après midi.
Raphaël
 

Misange

XLDnaute Barbatruc
Re : tableaux liés entres plusieurs fichiers

Tu peux aussi ouvrir le fichier de données en lecture seule par macro. Tu y gagneras en rapidité par rapport au fait de prévoir des milliers de lignes inutiles, surtout si tu as des formules matricielles ou des sommeprod.
 

raphael.hdg30

XLDnaute Nouveau
Re : tableaux liés entres plusieurs fichiers

Idée géniale !!!
mais pour ça, il va falloir que je travail un peu sur le VBA !
il y a longtemps que j'utilise Excel mais je n'ai pas le temps de travailler dessus.
en conséquence, à part lancer quelques macros pour des impressions de pages, utiliser les fonctions de base que tout le monde utilise :eek: ...
mais je sent qu'avec ce forum et l'aide de personnes comme toi, je vais avancer.
merci pour ton aide.
Raphaël
 

raphael.hdg30

XLDnaute Nouveau
Re : tableaux liés entres plusieurs fichiers

Bonjour Misange et Bonjour à tous.
J'ai pu avancer dans le développement de mon projet, mais j'ai maintenant un autre petit soucis.
en effet, j'avais indiqué que j'avais un premier fichier fixe (Critères) qui servait de base à d'autres fichiers qui venanient se connecter dessus.
ces autres fichiers satélites fonctionnenent à partir d'une matrice (montage) et doivent être sauvegardés ensuite chacun sous un autre nom : "montage 1" - "montage 2" ....
tu m'avais suggéré d'ouvrir à chaque fois le fichier critères en lecture seule lors de l'ouverture de mon satélite. sauf que le nom de ce satélite n'est pas pris en compte une foi sauvegardé par le code de démarrage.
ci-après le code :

Sub demarrage()
'
' demarrage Macro
' ouvre les critères en lecture seule
'

'
Workbooks.Open Filename:= _
"C:\Users\toto\Desktop\LOGICIEL\criteres.xlsx" _
, ReadOnly:=True
Windows("montage.xlsm").Activate
ActiveWindow.ScrollWorkbookTabs Position:=xlFirst
Sheets("Loyers").Select
Range("V2:AC2").Select
End Sub


la variable est donc "montage"
y a-t il une façon de coder cette variable ?
par avance je te remercie.
bon AM
Raphaël
 
Dernière édition:

Misange

XLDnaute Barbatruc
Re : tableaux liés entres plusieurs fichiers

Bonjour

quand tu postes du code va en mode avancé et utilise les balises code (le #) c'est plus facile à lire.
Essaie ceci

Code:
Sub demarrage()
Set MonClasseur = thisWorkbook
    Workbooks.Open Filename:= _
        "C:\Users\toto\Desktop\LOGICIEL\criteres.xlsx" _
        , ReadOnly:=True
    MonClasseur.sheets("loyer").Activate
    Range("V2:AC2").Select
End Sub


Je ne comprends pas trop ce que ceci veut dire
ActiveWindow.ScrollWorkbookTabs Position:=xlFirst
 

raphael.hdg30

XLDnaute Nouveau
Re : tableaux liés entres plusieurs fichiers

Misange,
Je te remercie.
ça fonctionne !!!

pour mes prochaines questions je ferai attention à l'écriture du code.

quand à la ligne que tu ne comprends pas, je t'avoue que ce n'est pas moi qui l'ai écrite, elle s'est inscrite automatiquement quand j'ai enregistré la macro.

merci encore et bonne soirée.

Raphaël
 

Discussions similaires

Statistiques des forums

Discussions
314 062
Messages
2 105 220
Membres
109 289
dernier inscrit
6LV1.69510