マクロである範囲をコピーして、別の所に貼り付ける処理をしているのですが
下記メッセージがでるため一時処理が中断してしまいます。
処理が中断しないようにこのメッセージを表示させたくないのですがどうすればよいのでしょうか。

クリップボードに大きな情報があります。この情報をほかのプログラムに貼り付けられるようにしますか?
・後で貼り付けるためにクリップボードに保存する場合は、[はい]をクリックします。
・クリップボードにある情報を削除する場合は、[いいえ]をクリックします。

このメッセージが出るたびに[いいえ]をクリックしているのですが、マクロを使用してメッセージを確認しないで[いいえ]をクリックしたことにする方法を教えてください。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

閉じる前に微小な範囲、例えばA1セルをコピーしたらどうでしょう。

    • good
    • 0
この回答へのお礼

回答いただいたことを早速試してみましたらうまく行きました。
本当に有難うございました。
「閉じる前に微小な範囲、例えばA1セルをコピー」は目から鱗のような感じです。
こらからもnishi6さんを見習って勉強してゆきたいと思っています。
今後ともどうかよろしくお願いいたします。

お礼日時:2001/08/31 21:45

No.1の者です。


元ファイルを閉じる時に現れるのであれば、
次の1行を閉じる前に入れてみてください。

Application.CommandBars("Clipboard").Controls(4).Execute

これは、クリップボードの中身をクリアする操作です。
先にクリップボードの中身を削除してしまえばいいような気がするのですが。
多分確認メッセージも出ないとは思いますが、念のためDisplayAlertsの操作も入れといた方がいいかも知れません。

この回答への補足

回答していただいて感謝します。

Application.CommandBars("Clipboard").Controls(4).Execute
の操作を追加したのですが、

実行時エラー
'Execute’メソッドは失敗しました:’commandbarbutton ’オブジェクト

とエラーになります。

お教えいただいたVBにも興味がありますので、もう少し詳しくご教授いただければ幸いです。

補足日時:2001/08/31 21:46
    • good
    • 0

ダメかもしれませんが、


Application.DisplayAlerts = False
をマクロの最初に挿入して試してみてください。

質問のようなメッセージを出せない(私のPCでは余り見たことがない・・・)ので確認できませんが。ダメだったらすいません。

この回答への補足

Application.DisplayAlerts = False では
どうやら[はい]をクリックした状態になっているみたいで、データ量が多すぎるせいか、非常に時間がかかり止まっているようにも見えます。
(この時「タスクマネージャ」で確認したら「応答なし」となっています。)
マウスで[いいえ]をクリックしたときは数分で処理が終了するのですが...

このメッセージはクリップボードに取り込んだデータの元のファイルを閉じようとした時に現れるようです。

現在、行っている処理はエクセル上でデータを検索するもので
・検索用のファイルを開く。
(以下マクロで処理)
・CSVファイルをテキストファイルに直してからエクセルで開く。
・開いたデータ(約3万行)を全てコピー。
・検索用のファイルに貼り付ける。
・テキストファイルを閉じる。

エクセルでは無理のある処理をしているのは承知していますが、[はい]ではなくて[いいえ]をクリックしたことにしたいので、宜しくお願いいたします。

補足日時:2001/08/31 18:43
    • good
    • 0

DisplayAlertsプロパティをFalseに設定すると、さまざまな確認・警告メッセージを非表示に出来ます。


記述してあるプロシージャの実行が終了すると、自動的にTrueに戻るようですが、念のため明示的にTrueを設定しておきましょう。
なお、マクロウィルスの警告メッセージは非表示には出来ません。

(例)
Sub プロシージャ名

Application.DisplayAlerts = False

------ 処理内容 --------

Application.DisplayAlerts = True

End Sub

この回答への補足

回答有り難うございます。
No.2のnishi6さんの所に書いたような状況です。
お手数をかけます。

補足日時:2001/08/31 18:45
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qpascalでのクリップボードの使い方

pascalであらかじめ用意してある文章をクリップボードを利用して、他の場所に貼り付けができるようにするプログラムを作くろうと思っているのですが少しうまい具合にいかなくて困っています。
文章をコピーするときなのですがeditなどの一列の文はクリップボードのClipboard.AsTextで出来たのですが、memoのような改行されるようなものが出来ませんでした。改行される文をクリップボードに移したいときはどうすればよいでしょうか?

Aベストアンサー

Memo1.SelectAll;
Memo1.CopyToClipboard;

でどうでしょう。全て選択された状態になってしまいますが。

QOutlookで[全員に返信]をクリックすると、[宛先]と[CC]をす

Outlookで[全員に返信]をクリックすると、[宛先]と[CC]をすべて[CC]に入るように設定。

今までOutlookずっと愛用していますが、現在は最新版のOutlook2010を使用してます。

[全員に返信]をクリックすると、元メールの[送信元]と[宛先]が新メールの[宛先]に変わり、[CC]はそのまま引継ぎますが、元メールの[送信元]と[宛先]と[CC]を全部[CC]に入るように設定などありますか。

または、[送信元]だけを[宛先]にして、ほかはすべて[CC]に入ってもいいですが。

Aベストアンサー

>[全員に返信]をクリックすると、元メールの[送信元]と[宛先]が新メールの[宛先]に変わり、[CC]はそのまま引継ぎます

これって、Microsoftのメールソフトの仕様ですかね。
自分が受信したメールの宛先やCCであっても、Outlook Expressもそうなるようです。

私のメインのThunderbirdでは、自分が複数の宛先やCCに含まれている場合でも、それらの受信メールから「全員に返信」で、受信メールの「送信元」のみが、返信メールの宛先に入り、他の「宛先」や「CC」はすべてCCに表示されます。

>[送信元]だけを[宛先]にして、ほかはすべて[CC]に入ってもいいですが。

この部分での方法は、返信メールの宛先欄で、送信元以外をドラッグして選択して右クリックから切り取り、CC欄に右クリックから貼り付けするしかないと思います。

QCLCLというクリップボード拡張ソフトの使い方

ダウンロードしてみたのですが、さっぱり使い方がわかりません。
使い方の書いてあるHPなどないでしょうか?

説明書を読んだのですが、なんというか妙にマニア向けなのか、
半分も意味がわかりません。恥ずかしながら。
ネットでも使い方を調べたのですが、もうさっぱりです。
詳しい人に人気があるみたいで、他の同種類のソフトは使い方はすぐわかるのですが、これだけさっぱりわかりません。なんか急に頭悪くなったのかも・・。
ソフトに求める機能上、最前面表示と、コピー順に上から並べる機能を兼ね備えてるのがこれだけみたいので何とか使いたいのですが。
拡張機能はあとからでいいのですが、基本的な使い方がわかりません。
ということで、
詳しいかたおられたら、使い方の書いてあるページがあれば教えてください。お願いします。

Aベストアンサー

もっとも基本的な使い方は
1) 起動するとタスクバーにクリップのアイコンが表示されます。
2) そのアイコンを右クリックすると「メニュー」が表示されます。
3) CLCLを起動していた時にクリップボードにコピーされたデータが並んでいますから、
  貼り付けたいところにデータをクリックすると貼り付けられます。

スタートアップファイルに登録しておくと良いでしょう。

細かな機能について、わかりやすい解説を探したのですが、
残念ながら見つかりませんでした。
少しずつ試行錯誤しながら覚えるしかありませんね(^^;)
DLしたファイルのreadme.txtを熟読してみてください。
使えるようになれば、手放せなくなる便利なソフトです。

参考URL:http://blog.webcreativepark.net/2007/08/30-221553.html

Q[ctrl] + [V] で書式無しテキストとして貼り付ける

PowerPoint2002を使用しています。

テキストを [ctrl] + [C] でコピーし、[ctrl] + [V] で貼り付けるときに、書式無しテキストとして貼り付ける方法はないでしょうか?

書式なしテキストとして貼り付けるには、
「編集」→「形式を選択して貼り付け」→「書式なしテキスト」と選択しますが、これでは手間がかかります。
マクロを登録すればよいのかもしれませんが、もっとスマートにできる方法がありましたら教えてください。

Aベストアンサー

こんにちは

私はテキストエディタを別に立ち上げておき,一度そこにペーストしてから再びコピーし
て,パワーポイントにペーストしています.
コピー&ペーストを2回繰り返すことになりますが,[型式を…]をやるよりは楽かなぁ~
と思っています.書式を無くしたいときはいつもこの方法を使っています.

[型式を…]のコマンドをツールバーに入れてしまうという方法もありますが,メニューか
ら選ぶという手間が省けるという程度です.

Qワードの使い方

ワード200です。
クリップボードの使い方です。
クリップボードに「全てクリア」というボタンはあるのですが、一部をクリアしたいときのボタンはありません。
一部(たとえば、3つコピーしているものがあったとして、ひとつを)クリア(削除)したいときはどうするのですか?

Aベストアンサー

たぶん最近のマシンをお使いでしょうから、クリップボードに少々溜まっても、放置しておいて何ら問題はありません。

それに、いちいちクリアせずとも、ワードなどを終了させたときに、クリップボードに大きなデータがあれば、消してよいかを聞いてきます。

クリップボードとは、その名のとおり、文章や画像などをほかの場所にコピーするとき、一時的においておく場所と考えてください。

QOutlookExpressの[eml]データを[msg]データに

メールデータについて教えて下さい。

通常OutlookExpressのメールデータを保存すると
拡張子が[eml]になりますが、
これをOutlookの[msg]に変換する方法は
ありますでしょうか?

理由は、取引先からメールデータを
[msg]で欲しいといわれたのですが、
私のメーラーはOutlookExpressのため
渡すことができません。

何か良い方法を教えて下さい。

Aベストアンサー

下記のサイトのソフトはいかがでしょうか?

参考URL:http://www.freedownloadscenter.com/Best/eml-convert.html

QWordのクリップボード

Wordで文字列をコピー(メニュー「編集」-コピー や Control+C)を行うと、
クリップボードに入ります。

しかし、コピーしてすぐ貼り付けを行うときでもクリップボードに入ります。

クリップボードにたくさんアイテム(文字列)が入っていると うざったいので、
できればコピー後すぐ貼り付けるものはクリップボードに入れたくないのですが、
クリップボードに入れるものとそうでないものを分けるにはどうすればよいですか。

また、クリップボードに入っているアイテムのうちの一部のみを消去する(選んだものだけクリア)にはどうすればよいですか。


Word2000です。

Aベストアンサー

こんにちは。

>長い間とっておいて繰り返し貼り付けるものはクリップボードに入れて、
>すぐ貼り付けて後で貼り付ける予定のないものはクリップボードに入れないようにするにはどうすればよいのか

他の方の回答にもあるとおり、クリップボードは、あくまでも「一時的な」記憶領域としてもうけられたものです。

ですからクリップボードの内容を、ユーザーが意識して管理するという使い方は、はじめから想定されていないと思います。


しかしクリップボードでそれを実現できなくても、
似たような機能が、
アプリケーションにいくつか装備されていると思います。

たとえばWordで、よく使う単語や文章があるのであれば、
IMEに「単語登録」するなり、
「定型句」として登録しておけば、
いくらかましになるのではないかと思います。

Qエクセル表示形式で[DBNnm1][$-FFFF]0となるのは?

アラビア数字を漢数字で表記(9105→九一〇五)するため「表示形式」、「ユーザー定義」で
[DBNnm1]0
と入力(詳しくはないのですが、このサイトで調べてそのようにしてみました)してファイルを保存しましたが、再びファイルを開いたときにそのセルの表示がアラビア数字に戻っており、表示形式が
[DBNnm1][$-FFFF]0
と変わっています。[$-FFFF]の部分は何を表しているのですか?
また、保存時のまま変わらないようにする対処法を教えてください。よろしくお願いします。

Aベストアンサー

「ユーザ定義」で”[DBNum1]G/標準”とやるだと思います。
この場合、9105->九千百五と変換されます。

9105->九一〇五と変換するには、関数を使わないと出来ないのではないでしょうか。

A1のセルに数字が入っている場合、A2のセルに以下の式を書きます。
=NUMBERSTRING(A1,3)

Qクリップボードの中身は、どうやって見るのですか?

 クリップボードは、蓄積されるのですか?例えば、「コピー」をしてそのままにしておくとクリップボードに残っているのですか?
 クリップボードの中身が見たいのです。

Aベストアンサー

クリップボード関連のユーティリティなどをインストールしていない限り、何かをクリップボードにコピーするとそれまでにクリップボードに入っていたものは失われます。そうしてクリップボードに入ったものは、別な何かがクリップボードにコピーされるか、あるいはWindowsが終了するまで(再起動/ログオフなど)、そのまま内容が保持されます。

WindowsXP,2000などであれば、

スタートボタン→ファイル名を指定して実行→clipbrd

とすると、その段階でクリップボードに入っている内容が見れますよ。

Q[3430514]を[昭和43年5月14日]と表示させたい

大量のデータを

3430514 > 昭和43年5月14日

という形式に変換、またはセルの書式設定で
変換したいです。

1文字目は、

1 明治
2 大正
3 昭和
4 平成

2文字目以降は年号・月・日という形式です。
なんとか手間をかけずに綺麗に整理できればと、
思うのですが、良いお知恵がありましたらお教え下さい。

Aベストアンサー

3430514がA1セルにあるとすれば

=CHOOSE(LEFT(A1,1),"明治","大正","昭和","平成")&MID(A1,2,2)&"年"&MID(A1,4,2)&"月"&RIGHT(A1,2)&"日"

これでOKなはず。

以下、式をオートフィルでコピーすれば大量のデータでも大丈夫です。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング