• 締切済み

EXCEL VBAでオブジェクトを削除するには?

EXCEL2000を使用しています。 HPからコピーした表を利用して、VBAで加工したいと思っています。 HPからコピーした場合、不要なオブジェクトがある為、まずこれを消したいのです。 EXCELでの一般的な方法としては、オブジェクトの選択をしてから、範囲指定をし、削除すれば処理できます。VBAではオブジェクトの名前を指定しなければならないと思うのですが、HP上の、オブジェクトの名前は頻繁に変わる為、名前を指定するという方法では、使いづらいのです。 何か良い方法はないでしょうか?

みんなの回答

  • izumokun
  • ベストアンサー率30% (1129/3679)
回答No.1
terakura
質問者

補足

オブジェクトという書き方がまずかったと思います。私の消したいと思っているオブジェクトとは、広告とかリンク先等の図(ボタン)です。 教えていただいたサイトはAccessのテーブルを削除というページでしたので、少し違うような気がするのですが、応用すればできるのでしょうか?

関連するQ&A

  • エクセルVBAで同名オブジェクトの全削除

    お世話になります。よろしくお願いします。 環境 画面→VB6.0    帳票→EXCEL2000 VB画面からデータをエクセルVBAに渡して、帳票を作成しています。 帳票に同名の四角形オブジェクトを複数個配置しています。 VB画面の指示で、この同名のオブジェクト全てを削除 したいのですが、行き詰ってしまいました。 オブジェクトが存在するかどうかをチェックすることができれば、削除可能だと思うのですが・・・ また、この他にも解決方法等ありましたらご教授下さい。

  • エクセル2007 オブジェクトを削除する方法

    エクセル2007 オブジェクトを削除する方法 エクセル2007を使用しています。シートに膨大な量のオブジェクト(空白のテキストボックス)が貼り付けられており、重すぎて操作がまともにできない状況です。これらのオブジェクトを一度にまとめて削除する方法を教えてください。 ただし、ホーム - 検索と選択 - 条件を選択してジャンプ - オブジェクト → 削除  という方法はすでに試しています。この方法では1時間経っても処理が終わらずダメでした。素人考えですが、おそらくすべてのオブジェクトを描写する処理に時間がかかっているのではないかと思います。ですので、これ以外で処理に時間がかからなそうな方法(オブジェクトを描写せずに選択して削除でするようなイメージ)があれば教えていただきたいです。 「ページレイアウト」の「オブジェクトの選択と表示」を実行すると、短時間でオブジェクトの一覧が表示されますので、オブジェクトを認識すること自体の負荷は大きくないのかと思います。私の勝手な解釈では、描写するのに無駄な負荷がかかっていると思いますので、オブジェクトを描写せずに一覧の表から削除するような、効率的な方法を探しています。

  • セル範囲と図形を指定してVBAで削除するには?

    エクセルで一枚のシートに複数のオートシェイプ(○、△、□)を使用したものがあります。 オートシェイプを使用しているセルの範囲は(A1:G20)と(AP1:AX20)の二箇所なのですが、 VBAで(A1:G20)の範囲にあるオートシェイプ(○のみ)を削除する事はできますか? (A1:G20)の範囲にあるオートシェイプは全体がこのセル範囲に入っています。 手動で、オブジェクトの選択で範囲指定をした後削除という方法もあるのですが この削除の作業の前後に他のVBAを使用しているので、 VBAで削除が出来ればと思います。 いろいろ検索したのですが、セル範囲もしくは図形のいずれかを指定して 削除する方法はあったのですが、両方を指定してのVBAがわかりませんでした。 よろしくお願いいたします。

  • エクセルVBA

    エクセルの一部セルを指定してマクロで、新しいブックにコピーしたいと思っています コピー&貼り付けの方法は知っていますが、ワンクリックの方法(指定範囲が広いため)を考えています 色々とVBAの専門書を見ましたが、シートまるごとコピーは複数の書物に載っていますが、見られたくない部分もあります よろしくお願いします

  • エクセルvba で フォームの削除

    エクセルvbaで、 フォーム上ボタンクリック⇒処理が終了 ⇒ソースの削除⇒新しい名前を付けて保存 という流れで使用しております。 その時にソースは削除できているのですが、 フォームが残ってしまいます。 フォームを削除させる方法はございますでしょうか? 何卒、宜しくお願い致します。

  • Excelオブジェクト

    エクセルオブジェクトに関して質問です。 VBより起動したExcelをExcelの"×"ボタンで閉じると、タスクにExcelオブジェクトが残ってしまいます。Excelの"×"ボタンを使用し、タスクからも完全にExcelオブジェクト解放する方法はありますか? よろしくお願いします。

  • ExcelとPowerPointをVBAで連携させる方法

    おけましておめでとうございます。 本年もよろしくお願いします。 で、本題ですが、 (Win95でExcel2000とPowerPoint2000を使用) EXCELのデータベースの表を順々にPowerPointのテキストボックスへ コピーして印刷するためにVBAを作成したいと思ってます。 (印刷形式がPowerPointのため) ここには作成できるんですが、両者のVBAをどのように 連携させるかわかりません。 よろしくご教授ください。 また、PowerPointのVBAでマクロの記録を使わず、オブジェクト名 (("Text Box 1")とか)を知る方法もあわせてよろしくご教授ください。

  • VBAで複数のオブジェクトを同時に解放するためには

    Excel2003です。 あるExcelブック内にある複数のVBAオブジェクトを同時に解放したいのですが、 どうやってもオブジェクトを一つしか選択することが出来ません。 たくさんあるとかなり手間がかかってしまいます。 まさか、VBAの解放を行うためのプログラムをVBAで書かなければ出来ないのでしょうか?

  • エクセルのVBAでオブジェクトの配列変数は使えますか?

    VBですとオブジェクトの配列変数というか、コピーしたときに自動的に配列になってしまいますが、エクセルのVBAの場合でオブジェクトの配列変数は使えますか? なにをしたいかというと、ボタンが多すぎて一つ一つにプログラム定義は面倒、そこで配列にしてまわすことにしたいのですが、エクセルで可能でしょうか。 どなたかお願いします。

  • VBA=エクセルシートの削除方法のプログラムについて

    エクセルシートの削除で、メイン以外の「コピー等で作成されたシートを全部削除」することは出来ますか? 出来るとすれば、どのようなVBAになりますか? 例えば、「原本」という名前のエクセルシートはどのような場合でも保存しておきたく、 原本以外に原本のコピー等で「カナ並替」「住所並替」等々のシートを作成したとします。 「カナ並替」「住所並替」等々のシートをそのまま残しておきますと、あとから追記入力しようとした人が、原本以外に入力してしまうミスを防ぎたいのです。 VBAでエクセルシートの名前で指定してデリートすればシートの削除が出来るのは分かっているのですが、「原本以外」という くくりで削除できる方法を知りたいのですが-・・・・数式で表せば「≠」ということになりますが・・この場合ですとシートが何枚出来ても一発で「原本以外」は全て削除されますので、非常に有効と考えています。 よく分からないのでよろしくお願いします。

専門家に質問してみよう