• ベストアンサー

VBAで確認メッセージを表示させない方法

VBAで別BOOKからシートノの一部をコピペさせようとしています。 ところが、コピー元とコピー先の両方のBOOKに同じ「名前の定義」があります。 そうすると添付のような確認メセージが出ます。 すべて「はい」(コピー先の「名前の定義」を使用する。)でVBAを先にすすめるためにはどのようなコードを書けばいいのでしょうか? よろしくお願いします。

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

  • ベストアンサー
  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.2

下記のよううに挟む。 Application.DisplayAlerts = False  確認メッセージの出る操作 Application.DisplayAlerts = True ではダメ?

emaxemax
質問者

お礼

こんな場合でもApplication.DisplayAlerts = Falseが使えたのですね! ありがとうございました。 助かりました。

その他の回答 (1)

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

コピー先の名前を利用する必要があるのですよね。 コピー元の名前の定義を削除してから、貼り付けるしかないと思いますが Workbook("コピー元のBook名").Name("削除する名前の定義名").Dlete いまのコードで貼り付ける。

emaxemax
質問者

お礼

ありがとうございます。 コピー元の名前の定義を参照しているセル範囲をコピー先に貼り付け、こんどはコピー先にある名前の定義を参照させたいので、コピー元の名前の定義を削除するわけにはいかないと思うのです。

関連するQ&A

  • VBAでエラーメッセージが出ないようにしたい

    book1にbook2のセルをコピーして貼り付け、book2を閉じようとしたところ、シートにリンクが張られているのか以下のようなメッセージボックスが出てきます ----ここから----------------- 移動またはコピーしようとしている数式またはシートには、移動またはコピー先のワークシートに既にある名前’xxx’が含まれています。この名前を使用しますか? コピーまたは移動先のシートに定義されている名前を使用する場合は「はい」をクリックします。 数式またはワークシートで参照する範囲の名前を変更する場合は、「いいえ」をクリックし、「名前の重複」ダイアログボックスに新しい名前を入力します。 ---------ここまで------------------ 取り敢えず「はい」をクリックして閉じているのですが、複数回このメッセージが繰り返し出てきて面倒なので、VBAでこのメッセージを出さないようにしたいのですが、どのようにすればよいのでしょうか?

  • ExcelVBAでコード表示をさせない方法

    Excel2013でVBAコードを表示させたくありません。 ツールー>VBAProjectのプロパティ->保護ー>プロジェクトを表示用にロックする ->パスワード入力 をすると確かにパスワードがかかるようになります。 しかしそのファイルを開いて シートの移動またはコピー>移動先ブック名<新しいブック>->コピーを作成にチェック ー>OK とするとコピー先の新しいブックでパスワードでロックしていたはずの VBAコードが見れるようになります。 シートのコピーをしても見えなくする方法はありませんか? 宜しくお願いします

  • EXCEL・VBAに関して

    或るブックで定義した「ユーザ定義関数」を,VBAでシートを別のブックにコピーするのと同時にそのブックにコピーすることは可能でしょうか? 後、一連のブックをグループ分けのようなことをして、そのグループ内では共通して使えるようには出来ますか。そうすればコピーする必要は無いように思うのですが。

  • エクセル(VBA)のブック間でのコピーペーストについて

    こんにちは。VBA入門レベルのものですが、質問させてください。 ブックAとブックBを開いた状態にし、 ・ブックA⇒VBAを組む&データ貼付け先 ・ブックB⇒データコピー元 ブックBの特定セル(例:D10)からブックAの特定セル(例:E12)にコピー⇒貼付 する方法を探しています。 なお、ブックBは、ブック名とシート名が都度変わるので、「ブックAではない方の開いているエクセルファイルからデータをコピーし、ブックAに貼付ける」の構文にしたいです。 また、コピペの他に数式(イコール)で飛ぶ方式でもかまいません。 この内容でのVBAの記述方法が分かる方、どなたか教えて頂けますでしょうか。 すみませんがよろしくお願いいたします。 ※エクセル2003です。

  • VBAのコード

    VBA初心者です。 "元データ"シートのA1をコピーし、cドライブにある、"保存用"というフォルダの、"一覧"というBOOKの"保存先"というシートのA1に貼り付ける時のコードがわかりません。 貼り付け先のシートを指定する記述がどうしてもわからないので助けてください。 よろしくお願いします。

  • VBA コピー&ペースト

    次の作業をVBAでマクロを組みたいのですが、どのような構文にすればよいでしょうか。VBA初心者のため、お知恵を拝借させてください。 [目的] 1.ブックA(コピー先)に設定したハイパーリンク先のブックB(コピー元)へジャンプ 2.ブックBへジャンプ後、特定のセルの値をコピー 3.コピーした値をブックAの特定セルへペースト 4. 1.~3.の作業をリピート 対象は、上の作業が未完(ブックAのペースト先のセルがブランク)のもの [詳細] ・ブックB(リンク先)の保存先はサーバー ・リンク先はブックBの特定のシート ・ブックAで設定したハイパーリンクのセルの値がリンク先のシート名 ・ブックBは複数、リンク先のシートも複数(ハイパーリンクごとにリンク先が異なる) ・ブックBにはマクロが設定、開くたびにマクロ有効無効のメッセージ(Excel2003のため) ・コピペする項目は3つ ・ブックA,Bともに開いた状態で、2.~4.のリピートというマクロでも構いません。 以上ですが、他に情報が必要でしたらお申しつけください。 よろしくお願いいたします。

  • EXCEL  VBA シートコピー、名前変更他

    EXCEL  VBA (1)シートコピー、名前変更 (2)他の固定のbookへ転送をVBAで記述 book1のsheet1を開き、そのsheetをコピーしたものをABCというsheet名に替え、 それをbook2のsheetの後ろへ移動するというマクロをPersonalに作ろうとしていますが、 インデックスエラーとか【アプリケーション定義または、オブジェクト定義のエラー】とかインデックスエラーとか になります。 book1のsheet1とかは、マクロを使う場合は、固定的な名前でなくいろいろそのときどきでかわる名前ですが、 マクロを使って、そのsheetをコピーしたものをABCとしてbook2のsheetの後ろへ移動したいということです。 よろしくお願いします。

  • EXCELにある沢山の名前(範囲名)を一発で消去したい

    エクセルのブックに沢山の名前(挿入-名前-定義で作成した)があります。シートの移動またはコピーで新規ブックに1つのシートをコピーしたら名前の定義までコピーされてしまいました。 そこで、VBAを用いてこの名前を消去したいと考えましたが、方法が全く解りません。 VBAで名前を一気に消すにはどうすればよいのでしょうか?教えてください。よろしくお願いします。

  • excel VBA ブック間コピーについて

    evcel VBA初心者です。 ブック間コピーの方法を探っていて以下の質問にたどり着きNO.2 NO.3の回答を試してみましたが、値のみしかペーストされません。 書式を含めすべてコピペする方法を教えて下さい。 Range("**")を変えればいいというものなのでしょうか。 また、NO2の回答のコードの中で sFindbook の変数はどこで宣言しているのでしょうか。 http://okwave.jp/qa/q5261470.html

  • シートのコピー、セル全体のコピーで列幅が変わる

    VBAから新しいブックへのシートコピー、セル全体のコピーをすると 列幅が変化し、印刷プレビューで確認してもコピー元とは異なっています。 列幅をみるとコピー元が15、コピー先が11になっていますが、ピクセルは両方とも 90となっていました。 VBAを使わず手動で試したところ、コピー元と同じ列幅でシートコピー、セル全体のコピーが できました。 VBAでは、コピー元とコピー先の列幅を一致させることはできないのでしょうか? なお、バージョンはExcel2003で、使用したメソッドはマクロ記録したものです。

専門家に質問してみよう