• ベストアンサー

エクセル2007のマクロ異常

Wendy02の回答

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.3

こんにちは。 お話を読んでいて、私は、良く理解できていないのですが、 >新たに作成したファイルが「BOOK1」だとしますと、 もともと、新規のブックに、マクロを登録するつもりで作られたものではありません。 新規ブックに登録するようなマクロは、非常に特殊なものです。それは、既存の規定のマクロブックに登録していればよいのですが、そうすると、そのマクロを利用するたびに、規定のマクロブックが呼び出されてしまいます。それがうっとうしいなら、マクロを「個人用マクロブック」に登録しておけばよいと思います。 >マクロボタンをクリックすると Office 2007 では、画面の上部の「クイックツールバーのカスタマイズ」でマクロを登録すればよいです。 Office 2007 の場合は、リンク先のマクロでも、セキュリティの警告が出ますが、セキュリティを変更しておけばよいと思います。もちろん、拡張子は、xlsxのままで良いのです。 ただし、個人用マクロブックの場合は、以下のように多少変える必要があるかもしれません。個人用マクロブックの「標準モジュール」に登録すればよいです。 '------------------------------------------- Sub CopyTest()   On Error Goto ErrHandler '加える   ActiveWorkbook.Worksheets("勝馬投票券").Select '変更   With Worksheets.Add(Before:=Worksheets(1))     Worksheets("勝馬投票券").Cells.Copy .Cells     .Cells.Copy '書式情報等のコピー     .Cells.PasteSpecial Paste:=xlPasteValues, _     Operation:=xlNone, SkipBlanks:=False, Transpose:=False '値貼り付け     .Move '新しいブックを作成   End With   With ActiveSheet     .Range("A1").Select '    'シートの名前 '    .Name = "勝馬投票権"   End With '  '保存 '  ActiveWorkbook.SaveAs "ブックの名前"   Application.CutCopyMode = False Goto ErrHandler: '加える End Sub

miwaki
質問者

お礼

私の説明不足のようですね。 私の作ったマクロはこのファイル専用のマクロで、ファイルの中の特定のシートを新たなBOOKとして取り出すマクロです。 >新たに作成したファイルが「BOOK1」だとしますと、 これは、私のマクロで作成した新たなファイルを指しています。 図形ボタンに登録した上記の目的のマクロを実行すると、1度だけ意図通りに作動し、2度目は、ボタンに登録されたマクロが、どういうわけかexcel2007では、このマクロで作成した新BOOKのマクロに変わってしまいます。新BOOKには一つもマクロが登録されていないから、当然エラーになります。 昔のエクセルではこういうことはありませんでした。

関連するQ&A

  • excelでマクロシートをコピーしたとき

    excelでbook1のsheet1のセルA1に「1」を入力→プリントアウト→A1に「11」を入力→プリントアウト・・・以下「31」まで繰り返し。 というマクロが組んであります。 (ボタンにマクロが登録されています。) このシートをbook2にコピーをしたときに マクロを実行する(ボタンを押す)とbook1が開いてしまいます。 これをbook1を開かずにbook2でマクロを実行するには どのようにしたらよいでしょうか。 book2でマクロを作成し直して さらにボタンにマクロを登録していますが、 bookの数が多いのでけっこうな手間になります。 簡単な方法があれば教えて下さい。

  • エクセル2007マクロについて。お願いいたします。

    excelファイルの容量が10MBにもなってしまい大変困っています。すべてのシートを新しいブックにコピーしたのですがサイズは変わりませんでした・・・方法が間違っているのでしょうか??? 関数やマクロを組み込んだsheetが14枚くらいです。軽量化するにはどうしたら良いでしょう??また、肥大化しないためのマクロ等ありましたら教えていただけますでしょうか、よろしくお願いいたします。

  • エクセルマクロを教えてください

    エクセル2003を使用しています。ブックに1シートあります。シート名は「C3」セルに入力してある日付にしますが、シート上の表示形式は「平成20年1月」となっているところをシート名は「08-01」にします。その後シートを11枚コピーし、それぞれのシートの「C3」セルに年月を入力し、シート名を「08-02」「08-03」・・・「08-12」としたいのですが、うまくいきません。 マクロに詳しい方のご指導をお願いいたします。

  • エクセル2007でマクロ警告が出る

    エクセル2007を使用しています。 古いブックから新しいブックにシートをコピーしました。 古いブックは開くたびに「セキュリティの警告 オプション」の表示が上部にでていましたが、シートをコピーしたことで、それを引き継いでしまったようです。 〚開発〛からマクロを調べてもなにもありません。 警告が出ないようにするにはどうしたらいいでしょうか? ほかに確認方法はありますか?

  • エクセル2007 マクロ シート 移動

    マクロ学習中のものです。 エクセル2007 マクロの複数のブックのシートをひとつのブックにまとめたいです。 ふつうにコピペすると、コピー先ではマクロが走りません、 どのようにすればよいか、アドバイスください!! よろしくおねがいします。

  • EXCELのマクロで

    よろしくお願いします。 さて、過去にとあるEXCELのブックにマクロを登録しました。そのマクロも不要となり、マクロ一覧から全て削除した。 最近になってそのファイルを雛型として使用するケースが増え、名前を付け替えて使用していますが、ファイルを開く度に『マクロを有効にしますか?』と聞いてきます。 (マクロのセキュリティは中にしてあります) 正直 これがかなりウザいのですが、どうすれば聞いてこなくなるでしょうか? (但し、マクロウィルス防止の為、セキュリティは中のまま使用したいと思っています) シートだけを新規のブックに保存すればいけるとは思うのですが、現在のブックの何が問題なのかを知りたいのです。 尚、マクロ実行のダイアログを出しても、登録したマクロは何も残っていません。

  • コピーするExcelマクロを作りたいです(2)

    「コピー元」ブックから「コピー先」ブックにコピー&ペーストを 行うマクロを作りたいのですが、列の計算が複雑で困っています。 Excelブックのキャプチャ画像を加えて再投稿します。 画像ではシートになっていますが、画面左のシートのような表から 右のシートの当てはまるセルにデータを写すようにお考えください。 「コピー元」ブックは月に一度ダウンロードするデータで、ピボット テーブルです。一月ごとに、前月の列が各営業所ごとに増えていき ます。行には、商品ごとの売上げが入力されています。 また、各営業所ごとに、年度合計列があります。(営業所の数は10 前後、商品の行は50以上はあります。) 「コピー先」ブックは、あらかじめ年度末までの行列セル、合計列が 用意されていて、「コピー元」ブックからデータを移動してくるのみ でレポートとして毎月提出する体裁です。 単純にコピーするだけならばよいのですが、毎月各営業所一列ずつ 増えていくというのが式にして表せません・・・また、できる限り 数値の変更を最低限にして、毎年度利用できるマクロにするという 希望もあります。 ご面倒かと思いますが、お力を貸してください。

  • エクセルマクロ

    入力したワークシートを 新しいブックにコピーして保存するマクロを作成しました。 ただ下記の様に保管すると、 数式もそのまま元のエクセルファイルの数式を参照してしまいます。 下記のマクロをあまり変更しないで、 値貼付け(もしくは値貼付けしながら、新しいブックへコピー) するにはどの様に変更するといいでしょうか? よろしくお願いします。 'Sub newfilesave() Sheets("Sheet1").Copy '名前を付け、ファイル形式も決めてデスクトップに日付を付けて保存する。。 'ActiveWorkbook.SaveAs _ ' Filename:="C:\Users\xxxxx\Desktop\" & Format(Now(), "yyyymmdd_hhmm"), _ ' FileFormat:=xlOpenXMLWorkbook 'End Sub

  • EXCEL(マクロ機能あり)のコピー

    お世話になります。 現在、マクロ機能のあるEXCELファイルを別のPCへコピーし実行すると 思うような結果が返ってこない。 Sheetが2つあり、 ・Sheet1はDBより取得 ・Sheet2はSheet1を参照し集計 というように構成しています。 自分のPCでは全て問題なく実行できるが、 別のPCではSheet1のデータ取得は実行でき、Sheet2の参照集計ができない。 という点で悩んでいます。 お力添えをお願いいたします。 考えられる問題点は、 1.ファイルの作成時にマクロ機能を別のEXCELファイルよりコピー(ボタンの機能など)し、マクロの登録を行ったので参照がうまくいっていない。 2.マクロのコピーの仕方が正しくない 3.Excelファイルに何か設定をしなければならない(参照設定など) と考え調べていたのですが、解決に至りませんでした。 どなたかご教授をお願いいたします。

  • エクセルのマクロは超初心者のため、難しいことは全く分かりません。

    エクセルのマクロは超初心者のため、難しいことは全く分かりません。 よろしくお願いいたします。  m(_ _)m 同じbook内に複数のsheetがあります。 そのsheetは同じ型式のデータベースなのですが、sheetによって行が違います。 そのsheetのデータを一つのシートにコピー(一番上の先頭行はデータベースの名称でコピーしたくありません) をして一覧でまとめたいのですが、方法がわかりません。 sheet数が多いので、一つずつコピー→ペーストをするのが大変なので…どうぞよろしくお願いします。