Référence à une feuille de calcul à partir de son nom dans une cellule à l'aide de VBA
J'essaie de trouver comment faire une référence qui est définie par une valeur de la cellule à l'aide de VBA.
J'ai un formulaire que les entrées le nom et l'emplacement d'un classeur dans une cellule (par exemple, A1). Ensuite, je veux que mon code VBA pour prendre la valeur de cette cellule comme une référence à l'emplacement du fichier.
Au lieu de la mention "f:test/file.xls" je voudrais qu'il soit 'f:test/filedata.xls la feuille "sheet1" A1 " (clairement pas le chemin, mais j'espère que vous voyez l'idée).
Cela va me permettre de construire un ensemble interconnecté d'classeurs qui peuvent être stockées dans des endroits différents et ont des noms différents, sans codage en dur les emplacements de tous les temps (userform à l'entrée des emplacements dans les cellules est utilisé).
je ne suis pas sûr si cela est possible, et je ne peut certainement pas voir un truc pareil. En espérant que!
Acclamations
- cliquez ici pour divers moyens pour obtenir des données de classeurs
Vous devez vous connecter pour publier un commentaire.
Je ne suis pas tout à fait clair sur ce que vous cherchez à atteindre, donc je ne vais pas tenter de répondre à votre question de manière explicite. Au lieu de cela, j'espère que cela va vous aider à aller dans la bonne direction.
Ci-dessous est un extrait de code que j'ai qui fait référence à une cellule dans une feuille de calcul et utilise cette cellule comme le chemin d'accès au fichier pour être combiné avec un côté de la cellule qui contient un nom de fichier. Ils sont ensuite fusionnés et utilisée pour ouvrir le classeur.
J'ai dû le couper de tout un tas de code à partir de ce que j'ai commencé à faire de cet exemple beaucoup plus clair, donc je n'ai pas testé ce que est. Cependant, j'espère qu'il sert un bon point de départ pour ce que vous essayez d'atteindre.
Bonne chance!
Disons que dans la feuille active dans la cellule A1, vous aurez chaîne comme ceci:
Ensuite de référence pour classeur 'source.xls" et puis range la feuille Sheet1!A1' peut être fait comme ceci: