• 締切済み

【VBA】Vlookupを更新した後にマクロを実行

こんばんは VBAでWorkbook_Openを使用するマクロを組んでいるのですが、 ワークシートを開くと、Vlookupが更新される前に実行されてしまうため、自分が欲しい結果とは異なるものが表示されてしまいます。 ワークシートを開くとVlookupを更新してからマクロが実行される方法はありませんか?

みんなの回答

  • mt2015
  • ベストアンサー率49% (258/524)
回答No.1

Workbook_OpenがVlookupの前に動く事は無いはずです。 状況が良く解りませんが、Vlookupで検索範囲に指定しているデータ等の更新をAuto_openで行ったりしていませんか? Workbook_open→Auto_openの順に動きますのでこれなら理解できるのですが。 違う様でしたら更新されないVlookupの例を挙げてみてください。あと、Excelのバージョン情報も。

takasan_2525
質問者

補足

お早い回答ありがとうございます 勤務中で時間が少ないため詳しく書けませんが、 Auto_openは使用していません vlookup で参照するデータは別ブックのに保存されている状態です。 バージョンはexcel2013を使用しております 勤務後に詳しく書かせていただきたいと思います。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • EXCELでワークシートを開いたらマクロを自動実行したい

    いつもお世話になります。 EXCEL2000を使用しています。 EXCELファイルの中のあるワークシートを開いたときにマクロを自動実行することはできますか? AUTO_OPENだとファイルを開くたびに自動実行されるので、特定のワークシートを開いたときだけマクロを自動実行できるようにしたいのです。 よろしくお願いします。

  • teratermマクロをVBAで実行

    teratermマクロについてご教示願います。 teratermマクロを組んで、Linuxサーバにログインして処理をする.ttlファイルを作成しようと思っています。 その.ttlファイルを、VBAのプログラムから実行することは可能でしょうか? やりたいことは、EXCELのシート上にある「実行」ボタンを押下すると、VBAからteratermマクロが実行される、という処理です。 可能かどうか教えてください。また、もしご存じであればその際の VBAの組み方も同時にご教示いただければと思います。 よろしくお願いいたします。

  • Excel2000でマクロの「ツール」から実行を出来なくする方法

    VBAをシートの「ツール」-「マクロ」-「実行」を出来なくする方法を教えて下さい。 ただ、VBA自体を動かなくさせるのではなく、あくまでもシート上に「ツール」から実行させない方法です。 ボタンに登録してあるマクロは、押す事で実行させたいです。 「ツール」-「マクロ」へ行くのをパスワード管理で制御する方法でも良いです。 Excel2000使用の初心者です。よろしくお願いします。

  • VBA マクロの作り方で迷ってます

    EXCEL2000でVBAマクロ作成しています。 10枚のシートを作成するについて 同じ結果がでる次の方法で迷っています。 10枚は10人の個人別データが入っています。 10枚のデータは前回入力したデータのうち 変化のないものはそのまま使用します。 1)最初の一枚目のシートのセルに公式を埋め込みます。 2枚目以降のシートにも順次公式を埋め込んで行きます。少し面倒ですが、各シートを表示したとき即座に値が表示され肩が懲りません。(手入力もしくはマクロでつくる) 2)最初の一枚のシートにマクロで部品化したサブルーチンをつくり2枚目以降はCallステートメントで呼び出すマクロを作る。 上の2つの方法は結果が同じだと思いますが、処理速度や容量の点でどちらでつくるべきか迷ってます。教えてください。 違うカテゴリで質問してしまいました。すいません。

  • マクロでvlookup 

    マクロでvlookupを使用したいのですが、 動かした結果が #N/A になります。 どこが間違っているのでしょうか? マクロはこれ Sub macro1() Worksheets("訪問予定").Select Cells(3, 2).Value = Application.VLookup(Cells(1, 2).Value, Worksheets("担当").Range("A1:C5"), 2) End Sub 日本語で次のように私は認識してます。 「サブマクロ 訪問予定シートを選択 3行2列目の値は担当シートの日付と一致する行の2列目の値 エンドサブ」 やりたいことは 担当シートをもとに 訪問予定シートの担当蘭を埋めることです。 上記のマクロでは ループさせてないので 一か所しか埋められませんが ループを使ってひと月の担当予定を埋める方法を考えてます。

  • Excelのマクロを実行するきっかけとなるイベントについて

    マクロのイベントに「ワークシートの追加」(Private Sub Workbook_NewSheet(ByVal Sh As Object))がありますが、「ワークシートのコピー」をきっかけに、マクロを実行したい場合は、どのようにすればよいでしょうか? シートタブを右クリックして、コピーを追加のチェックボックスをONにして、同一ブック内にシートをコピーする操作の直後に、マクロを実行したいと考えています。 お知恵をお貸しください。

  • VBAで実行押すまでExcel非表示にしたい

    VBAでユーザフォームを作成しました。 Excelを立ち上げるとExcelシートの前にユーザフォームが出る状態なのですが、 ユーザフォームの実行ボタンを押すまでは非表示にしたいのですが、どのような記述をしたらよいでしょうか? マクロ的に実行ボタンを押すと結果が、Excel上に反映されるので、実行ボタンを押すまで非表示であれば大丈夫です どうか教えてください。

  • VBAマクロでワークシートを見比べて判定したい

    VBAマクロでワークシートを見比べて判定したい Workbook A.xlsとWorkbook B.xlsがあります。 AにBの情報をいれ、修正したい A.xls(sheet1) 番号  判定 1111   1 2222   0 3333   1 4444   1 B.xls(sheet1) 番号   3333    5555 判定の1は未完 0は完了 Bのファイルに出てくる番号は未完(1)、 出てこないものは完了(0) つまり上の結果のA.xlsは 番号  判定 1111   0 2222   0 3333   0 4444   1 5555   1 A.xlsには過去の分に併せ、Bに出てきたものすべてを出します。 マクロ初心者で基本的なことかもしれないのですが、ご教授願いますm(__)m

  • VBAエクセル2003でのマクロの実行について

    VBAで2003を使っています。 マクロの実行をショートカットキーで操作したいのですが ツール→マクロ→オプションでショートカットキーの作成が可能ですが 会社(エクセル2003)のでやろうとすると オプションの表示がありません。 (もしかしたら2003ではないのかもしれませんが、確認した範囲では 2003かと思われます。2010とかいいのではないのは確かです。) ショートカットキーを作る方法でどのような方法が 他にありますか?教えてください。 お願いいたします。

  • VBAマクロについて教えてください

    よろしくお願いします。私はVBAマクロはいまだに理解できていません。 次のマクロは教えてもらったものです。なにをやっているかはわかりますが シートabcは保護にしていますので一行目が実行されません。 そこで一行目を実行する前にシートabcの保護を解除して 一行目を実行後にまた保護を有効にしたいのですが VBAではなんと書いたらいいのでしょうか どなたか教えてください。せっかく式ができても使えなくて困っています Sheets("abc").Range("P5:S8") = Range("P5:S8").Value ActiveWorkbook.Save Application.Quit

専門家に質問してみよう