• ベストアンサー

エクセルのマクロについて質問です

下記方法(条件)でリンク(ハイパーリンクとは違う)の再設定を行いたいと思います。 1.開いているファイルが別の開いていないファイルとリンクをしている。 2.リンクしているファイルは別の2つ以上のファイルが存在する。 3.2つ以上のリンクしているファイルを新しい別のファイルとリンクしたい。 4.Aブック(開いているファイル) 5.B~Dブック(リンクしているファイル) 6.1~3ブック(新しくリンクをしたいファイル) 7.Bブック→1ブック Cブック→2ブック Dブック→3ブック といった具合でリンクの再設定をマクロで行いたいのですがどなたか教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • Siegrune
  • ベストアンサー率35% (316/895)
回答No.1

単にリンク(ハイパーリンクではない)なら、各セルの数式内にリンク先のファイルが 書かれているだけなので、 Aブックでリンクを書いてあるセルを1個ずつ調べて (調べ方は、cells(行番号,列名).formulalocalを見て、B~Dブックのファイル名があるかどうかしらべればいい)、もしくは無条件で、 cells(行番号,列名).formulalocal = replace(replace(replace(cells(行番号,列名).formulalocal,"Bのファイル名","1のファイル名"),,"Cのファイル名","2のファイル名") ,"Dのファイル名","3のファイル名") と式をセットしなおしすればいいはず。 (ただし、Bのファイル名とかが、関数名等とかぶると誤動作するので、.xlsまで置き換える。)

glimmer15
質問者

お礼

ありがとうございます。

関連するQ&A

  • エクセルのマクロについて質問です。

    リンクの設定してあるファイル(Book A)から、リンク元のアドレスを取得し、取得したアドレスを別のファイル(Book C)のセルに表示したいと思います。 リンク元はBook Bとします。 この一連の動作をマクロで行いたいのですが、どのように設定すればよいか教えていただければと思います。

  • エクセルのマクロについて

    お世話になります。エクセル2007のマクロについてですが、「A」というBOOKがありその中の任意のセルをクリックするとハイパーリンクで「B」というBOOKが開くようになっています。 ここで「B」が開いた時点で自動的に「A」を保存しないで終了させたいのですが、マクロの組み方がわかりません。 Sub Sample1() Workbooks("BookA.xlsx").Close End Sub と記述するとBook Aが閉じるのは調べてわかったのですが、ハイパーリンクでBが開いた時点でこのマクロを動かすようにするにはどうしたらいいのでしょうか?何か別の方法があるのでしょうか? 宜しくお願いします。

  • 離れたセルのリンク貼り付けを行うためのマクロについて

    ブック(1)のシート(1)にある複数の離れたセル(B2,D2,C3,F3,B4:F4)をコピーし、別ブックのシート(1)のセル(B2,D2,C3,F3,B4:F4)へリンク貼り付けを実行するためのマクロを教えてください。 なお、ブック(1)とブック(2)はイントラの共有フォルダ上の同一階層に置いてあります。 このブック(1)と同一フォーマットのブックが複数存在し、上記同様にブック(2)の離れたセルをコピーして別ブックのシート(2)のセルへリンク貼り付け。 続いて、ブック(3)の同じセルをコピーし別ブックのシート(3)へリンク貼り付けと言うように、同じセルをコピーし別シートの同じセルへリンク貼り付けの作業を繰り返し行います。 まったく同じ位置のセルをコピー&リンク貼り付けを繰り返し行いたいので、マクロを使って自動実行させたいと思っています。 離れたセルのリンク貼り付けは出来ないのかもしれないですが、アドバイスを頂けると助かります。 宜しくお願い致します。

  • エクセルマクロの質問です。

    こんばんわ! 別のファイルを開いた再に出る 「このブックには、ほかのデータソースへのリンクが含まれています」 という警告をエクセルマクロを用いて表示しないようにすることは可能でしょうか? (別のPCで使用することが多いため、ツール→オプションからの設定をいちいちしたくありません) アドバイスの程よろしくお願いいたします。

  • excel マクロコードを教えていただきたいです

    マクロを使うのが初心者のため、詳しい方に以下のマクロ コードを教えていただきたいです。 ある表の一番右の列にハイパーリンクが並んでいます。 そのハイパーリンクにて、各Bookファイルが開くのですが ハイパーリンクを一回押すことで、その一行(数セル)を、 開いた別ファイルのsheet内に貼り付けたいです。 今は方法がわからないため、ハイパーリンクにてファイル だけ開き、表の一行をコピーして、そのファイル内に貼り 付けています。 すみませんがわかる方教えていただきたいです。よろしく お願いします。

  • こんなことマクロで出来ますか

    普段は簡単なマクロしか使ったことありませんが以下のようなことって出来るのでしょうか? まず、 2つのファイルがあります。<A・B> <A>は入力用として(データ)や(雛型)で入力した情報が<B>に閲覧用としてリンクされています。 <A>の(データ)に開催会場のデータ(札幌、東京、大阪、福岡)を入力すると <B>に列ごとにリンクされます。 <B>:A1 札幌 B1 東京 C1 大阪 D1 福岡 マクロボタンをクリックすると <A>の(雛型)を新しいブックにコピーして各開催会場ごとのファイル名がつきます。<C>:札幌~<F>:福岡 <C>:札幌で入力したデータが<B>のA列へ <D>:東京のデータは<B>のB列へ   :   : それぞれ会場ごとのファイルが<B>の列ごとにリンクします。 このようにセルに入力したものがファイル名となって新しいブックを作り、そのデータを別のファイルの列ごとにリンクする…なんてことは出来ますか?

  • Excelのマクロについて質問です。

    ブックAのシートaの印刷に関する設定を、別のブックBのシートbにコピーするマクロを教えていただけませんか? 印刷に関する設定には、ページ設定で設定されるすべての情報です。

  • Excelでのマクロ化

     Excel(2000)の表のB列に2000.doc~順にファイル名(全て数字+拡張子)が入っています。それにリンクを貼っていきたいのですが、マクロで自動化するにはどのようにすれば良いのでしょうか?また、拡張子がdocで存在しないものには、代わりにtxtのものを貼りたいのですが。どちらも同じフォルダにありますし、docもtxtもあるものもありますが、docもしくは、txtは必ず存在します。  ちなみに、今までは、手で1つづつハイパーリンクで貼っていたのですが、先日より1日に5~10ファイルづつ増えてくるようになったので困っています。  また、このようなマクロの参考書で、これが良いよというものを紹介していただけるとありがたいのですが。もちろん、HPのURLでも構いません。 よろしくお願いします。

  • エクセルで特定の複数セルを選択し、別ブックへ一度に「リンク貼り付け」するマクロは?

    エクセルで作成したファイル(1)で、特定の複数セル(連続していないセル)を選択し、まったく同じフォーマットの別ふぁいる(2)へ一度に「リンク貼り付け」する方法があれば教えて頂きたいと思っております。 【BOOK(1) - シート】をコピー ---------------------------------------------------------------- ----------------------   A    B C      D     E FG   H  1 NO    名前   ランク  概要    備考 2 11   あああ      A     ****   ○○○  3 55     いいい     B     ****   △△△   4 77    ううう     C     ****   □□□     ---------------------------------------------------------------- ---------------------- 【BOOK(2) - シート】へリンク貼り付け ---------------------------------------------------------------- ----------------------   A    B C      D      E FG   H  1 NO    名前   ランク  概要    備考 2 11   あああ          ****   3  4       ううう     C     ---------------------------------------------------------------- ---------------------- 列BとC、列EとFとGはセルの結合をしております。 BOOK(1)のセル「A2」「BC2」「BC4」「D4」「EFG2」だけをコピーし、 BOOK(2)の同一セルへリンク貼り付けを行う。 コピーするセルが飛び石のように離れており、2つ以上のセルが結合している列があったりします。 複数のBOOKがあり、すべてのBOOKで上記と同一セルを「リンク貼り付け」する場合に 一度にまとめて実行できるようなVBAやマクロで実現可能な方法があれば教えて下さい。 (勉強も兼ねているため、マクロ記述に補足説明があると助かります) 現在の所、連続しているセルはまとめてリンク貼り付けができるのですが、離れているセルは1つずつ選択して貼り付けております。 この別ファイルへのリンク貼り付け作業が大量にあり、時間がかかるため大変困っております。 御手数お掛け致しますが、何卒よろしくお願いいたします。

  • エクセルのマクロ:リストについて質問させて下さい。

    エクセルのマクロについて質問させて下さい。 Aと言うブックがあります、ここに元の処理が入っています。 このとき、同時にB C Dのブックを開いており、 Aの中に入っているマクロをCに対応させたいと思っています。 Cのブックを開いてツール→マクロから選ぶのではなく、 Aのブックを開いたままボタンを押すと現在開いているブックがリスト内に表示され、選択して「実行」ボタンを押すと対象のブックにのみ処理が行われる・・・ という処理をしたいのですが、リストにアクティブブックの一覧を表示させる事が出来ません。 その後の処理もわからないので教えていただけますでしょうか? よろしくお願い致します。

専門家に質問してみよう