• 締切済み

VBA セル上にコードが出現

エクセルのVBAでマクロを実行すると、エクセルシート上にそのマクロのコードが現れてしまいます。原因が分かりません。ご教授おねがいします。

みんなの回答

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.2

シート上にコードが表示されるのですか? VBE(マクロのエディタ)画面が表示されるのではありませんか? それでしたら、マクロにブレイクポイントが設定されていてマクロの実行が中断している状態だと思われます。 VBE画面のメニューから[デバッグ]-[すべてのブレイクポイントの解除]とやって保存しなおして見てください。 ブレイクポイントが設定されているコードの先頭には●が付いているのですが、まれに●が消えて一見ブレイクポイントが設定されていないかのように見える事があります(97、2000では時々経験あり)。その場合も同様にすべてのブレイクポイントの解除を行えば止まらなくなります。

kan1kan
質問者

お礼

回答ありがとうございます。質問しておきながら解決してしまいました。実際にシート上にコードが出ました。記録マクロでコピーアンドペーストを繰り返し、コード上にpaste.activesheetが書かれ、それが原因でマクロを実行したときに、シート上にコードが現れたようです。

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

その現れるコードはどのような物でしょう。 変数を""で囲ってしまっているので、文字列として現れるとか?

kan1kan
質問者

お礼

回答ありがとうございます。paste.activesheetとVBA上で打ち込んでいたのが原因でした。

関連するQ&A

  • VBA セルの値を別セルにコピーするには

    VBAでPastespecialでセルの値を別セルにコピーするマクロを組みたいです。 以下は参考にしたソースコードです。 Worksheets("Sheet1").Range("A1:B10").Copy Worksheets("Sheet2").Range("A1").PasteSpecial _                  Paste:=xlPasteValues, _                  Operation:=xlNone, _                  SkipBlanks:=False, _                  Transpose:=False あるExcelマクロの入力フォームSheetに、製品リストと使用している場所のマスタデータをクエリで読み込んで、製品IDと場所のコードを入力したらINDEX関数で抽出し、マクロ実行ボタンを押すと抽出結果を入力フォームの入力欄に貼り付けします。 上記のマクロだと貼り付けする元セルを移動させたら内容がずれた値がそのまま貼り付けされてしまうと思われますが、地道にコードのコピー元のセルを書き直さないといけないのでしょうか。 Excelの関数だと参照範囲を固定したら掴んで移動させてもセル番地が連動して移動してくれますが、マクロの場合どのようにすれば良いでしょうか。 また、複数個所のセルをコピーするので Paste:=xlPasteValues, _ Operation:=xlNone, _ SkipBlanks:=False, _ Transpose:=False をコピーするセルの箇所に毎回入れていますが、コピー元のセル・コピー先のセル番地を一括して実行する方法はありますでしょうか。 VBAはソースコードを参考に当てはめているだけで、自力でコードを書くスキルは皆無です。 Excelは2016です。 詳しい方いましたらご教授ください。よろしくお願い致します。

  • 他のExcelファイルのVBAコードを検索したい

    他のExcelファイルに書かれたVBAコードに、ある特定のキーワード(パス名など)が使われているかを自動的に調べるためのVBAを書きたいと思っています。 仕事で使っているマクロが書かれたExcelファイルからある特定の処理をしているマクロを含むものを検索したいのですが、検索するExcelファイルが膨大なため、順番にExcelファイルを開いてVBAコードをチェックしていく工程をマクロ化したいのです。ファイルを順に開いていく処理はマクロ化できるのですが、書かれたVBAコードのチェックをどうしたらよいか悩んでいます。 「VBAコードに対して検索する」または「VBAコードを1行ずつ変数に代入する」、「モジュールシートをテキストファイルに出力する」などの処理が自動化できれば対応できそうなのですが、そのような処理をExcelVBAで作成できるでしょうか。 なお環境はWindowsXPのExcel2003です。 よろしくお願いいたします。

  • エクセル2000 での保護をVBAで・・・

    こんばんわ。エクセル Office2000の保護について教えてください。 シートを非アクティブにしました。 ですが、オートフィルタだけは使えるようにしたいと思っています。 いろいろ試してみたのですが、うまく出来ませんでした・・・ いつもは、ボタンでマクロの実行をしているのですが アクション(たとえば、オートフィルタボタン)でマクロの実行をさせたり、ということが出来れば、スマートなコードが書けると思うのです。 どうか、「アクションで実行」というマクロをご教授いただけないでしょうか?? どうか、よろしくお願いいたします。

  • 1つのVBAコードをすべてのコアを使って実行させたい

    いつもお世話になっております。 クアッドコア搭載のPCを購入してVBAの処理速度の向上を期待していたんですが、1つのコアだけで処理されているようです。 EXCEL2000でVBAコードを実行したのが原因だと思いまして、試用版のEXCEL2007を使って同じVBAコードを実行してみたのですがダメでした。 VBAコードをすべてのコアを使って実行することはできないのでしょうか。 特別なコードを記述しなければならないのでしょうか。 よろしくお願いいたします。

  • エクセルのVBAについて

    エクセルのVBAについて教えて下さい。 エクセルのVBAでプログラムを組んでいるのですが、一つわからないことがあるのです。 マクロが実行(オープン)されるファイル名(ファイルパス)をVBAで取得するためにはどうすればいいでしょうか? たとえば、マクロが実行されるファイルがC:\テスト.xlsならば "C:\テスト.xls"を取得したいと考えています。 どなたかご教授お願い致します。 宜しくお願い致します。

  • エクセル:VBA:マクロコード

    エクセルVBAで、 (質問1) マクロでsheet1のデータを処理して、sheet2に結果を表示するマクロで最初にsheet2をクリアーするというのはどうコードしますか。 (質問2) マクロでsheet1のセル/データを使ったりsheet2のセル/データを使ったりしますが、データはどう切り替えるのですか。 常に今どちらのシートのことを問題にしているか宣言するのですか。 その場合、 例えば今sheet1を扱ってるとした場合にsheet2のデータCells(10, "D")をsheet1のセルCells(10, "D")に入れる場合、 Cells(10, "D")=Sheets("sheet2").Cells(10, "D")こうなりますか。

  • VBAのコードについての質問

    いつもお世話になっております。 以下の操作(添付ファイル)に対するVBAのコードを教えてください。 (1)シート1(添付ファイル左):B列に新聞名、C列に対象記事数 (2)マクロを実行することにより、シート2(添付ファイル左)の表が作成される。 質問したい事は、A新聞の記事数が3、B新聞の記事数が2なので、シート2にA新聞の行が3行作成され、その下に、B新聞の行が2行・・・・記事数が0の場合は行は作成されない。 のような事をやいりたいのですが、コードが分かりません。 どなたかよろしくご教授ください。

  • VBA アクティブなセルのシート名を取得したい

    エクセル2010使用です。 VBAで、アクティブなセルのあるシート名を取得する方法を教えてください。  マクロ.xls (マクロシートA1) ←今回のマクロを書き込んだファイル  参照.xls (参照シートA1)  入力.xls (入力シートF3) この3つのエクセルファイルを開きます。 ( )内はそれぞれの前面にあるシート名と選択されたセルです。 入力シートのF3にカーソルをおいて下記マクロを実行すると   MsgBox ActiveSheet.Name & ActiveCell.Address 「マクロシート F3」と返されます・・・ ほしい結果は「入力シート F3」なんです。 このような場合にアクティブセルのあるシート名を取得する方法があれば教えてください。 よろしくお願いいたします。

  • Access2000のVBAでエクセルマクロ実行

    お世話になります。 Access2000のVBAでエクセルのマクロとアクセルのマクロを 交互に実行したいと思っております。 (1)エクセルのマクロ1を実行 (2)アクセスのマクロAを実行 (3)エクセルのマクロ2を実行 と交互に実行したいのです。 下記のサイトなどを参考に試みたのですが、 http://www.nurs.or.jp/~ppoy/access/access/acX005.html (1)を実行している途中に (2)が進んでしまいます。 どのようにすれば、(1)が終わってから(2)と、前の処理が 終わってから次の処理に進むことが出来るのでしょうか? Access2000のVBAから指示をかけたいので、 Access2000のVBAのコードで教えて頂ければと 思います。

  • エクセル:シート1のセルA1が0でなければ任意のマクロを実行したい

    エクセルマクロ(VBA)初心者です。よろしくお願いします。 (1)エクセルのsheet1のセルA1の値が”0(ゼロ)”でなければ、そのシート上で任意のマクロを実行し、ゼロであれば実行せずにsheet2へとぶ (2)同じようにsheet2のセルA1がゼロでなければ実効し、ゼロでなければsheet3へとぶ・・・の繰り返し(sheet50まであります。) このようなマクロ(標準モジュール)の書き方を教えてください。 よろしくお願いいたします。

専門家に質問してみよう