• ベストアンサー

エクセルのブックを開いた時にマクロを自動定期に実行したいのですが。

_HALの回答

  • ベストアンサー
  • _HAL
  • ベストアンサー率50% (7/14)
回答No.1

sub autorun() のところを、 Sub Workbook_Open() と変えればいいです。

taneyan
質問者

お礼

早速ありがとうございました。 助かりました。

関連するQ&A

  • Excel 2007 マクロ 別ブックのシートをコピーする方法

    Excel 2007 マクロ 別ブックのシートをコピーする方法 別ブックのシートをコピーして アクティブなブックのシートにコピーしたいと思います。 下記マクロを作成しました。 貼り付ける際に、クリップボードに保存するかどうか 聞かれるメッセージが表示されてうまくいきません。 またもっとシンプルな書き方があればアドバイスお願いします。 Sub 取り込み() Dim wb As Workbook Set wb = Workbooks.Open("\") Sheets("Sheet1").Select Cells.Select Selection.Copy ThisWorkbook.Activate ThisWorkbook.Sheets("特定").Select ActiveSheet.Cells(1, 1).Select ActiveSheet.Paste wb.Close End Sub

  • シートの自動追加を新規ブックで実行したい

    こんばんは。 いつもお世話になっています。 営業月報を作成したいと思い、色々お知恵を借りながら試しています。 Sheet1:チームのメンバー表 Sheet2~3:名簿と目標値 Sheet4:月報の原版 このような構成のブックで、毎月Sheet1のメンバー表を書き換え(名簿ファイルから直接コピペでA1セルから下に向かってメンバーの名前)、 下記のマクロを実行してSheet4を複製しています。 今はこの追加を同じブック内で最後尾へどんどん追加しているのですが、複数のチームで共有する都合を考え、Sheet1にコピペしたメンバーの月報は新規ブックを自動で起こしてシートを追加したいと思っています。 ******************************* Sub シート追加() Dim 追加シート名 As String Dim i As Integer For i = 1 To Sheets("Sheet1").Range("a1").End(xlDown).Row 追加シート名 = Sheets("Sheet1").Cells(i, 1).Value Sheets("Sheet4").Copy After:=Sheets(Sheets.Count) Sheets("Sheet4" & " (2)").Name = 追加シート名 Next End Sub ******************************* 現在使用しているマクロはこのような内容なのですが、新規ブックでシートの追加をするには、どのようにすればよいのでしょうか? よろしく御教示をお願いします。

  • 指定した時間に実行するマクロ

    Sub データー削除() Sheets("Sheet2").Select Rows("3:17").Select Selection.ClearContents Range("A1").Select ActiveWorkbook.Save ActiveWorkbook.Close End Sub データーAというエクセルBOOKに 上記の単純なマクロが組み込まれています このBOOKは普段は常に閉じている状態です このBOOKがAM0:00に自動で開いて上記のマクロの実行できるように するにはどの様にしたらいいでしょうか? on timeとかいう方法を使うらしいでんすが使い方がよくわかりません

  • マクロを実行するとフリーズしてしまう。

    マクロを実行するとフリーズしてしまいます。 パソコンが原因なのでしょうか? マクロは Sub 抽出() ' '「貼り付け」シートを'一度全てクリアする Sheets("貼り付け").Select Cells.Select Selection.Clear '「元」シートを選択 Sheets("元").Select 'フィルタかけなおし Rows("1:1").Select Selection.AutoFilter Selection.AutoFilter '’抽出前「*」選択 Selection.AutoFilter Field:=1, Criteria1:="~*" '全て選択してコピー Cells.Select Application.CutCopyMode = False Selection.Copy '「元」を貼り付ける Sheets("貼り付け").Select Cells.Select ActiveSheet.Paste 'フォントを「9」 With Selection.Font .Size = 9 End With End Sub です。 パソコンのスペックは celeron® cpu3.20GHz 3.19GHz 1GB RAM です。 最近VBAを覚え始めたばかりな者です。 仕事のデータではもっと複雑なマクロを実行していてもパソコンはなんともないので マクロに原因があるのではなくパソコンに原因があるのでしょうか? (上記のマクロを実行しているのは自宅のPCです) よろしくお願いします。

  • エクセルのマクロの記述について

    VBA初心者ですのでどうか詳しく教えてください。下記のマクロをエクセルで組んだのですが・・・ -------------------------------------------------------------------- Sub hideworksheets() Worksheets("sheet1").Visible = False End Sub Sub ボタン_Click() ActiveWindow.SelectedSheets.PrintOut Copies:=1 Sheets("sheet1").Select ActiveWindow.SelectedSheets.PrintOut Copies:=1 Sheets("sheet2").Select ActiveWindow.SelectedSheets.PrintOut Copies:=1 Sheets("sheet3").Select ActiveWindow.SelectedSheets.PrintOut Copies:=1 Sheets("sheet4").Select ActiveWindow.SelectedSheets.PrintOut Copies:=1 End Sub ------------------------------------------------------------ 1.上記設定で"sheet5"という別シートにボタンを設置した場合、このボタンを実行すると、シート1~4のほかにシート5まで印刷されてしまいます。シート5を印刷したくない場合のVBAの記述について教えてください。 2.「Sub hideworksheets()  Worksheets("sheet1").Visible = False    End Sub」    の箇所で、シート1を非表示にしたいのですが、このマクロを実行時、「Sub ボタン_Click()」以下のマクロを実行しようとすると、「実行時エラー1004 worksheeクラスのselectメソッドが失敗しました」のエラーがでてしまいます。シート1を非表示にし、無事印刷のマクロを実行する為の記述を教えてください。

  • エクセル bookの名称

    Sub 登録() Workbooks.Open Filename:= _ "\\buckup1\センタ\データ\連絡をください\シート.xls" Windows("入力.xls").Activate Sheets("管理").Select Sheets("管理").Copy Before:=Workbooks("シート.xls").Sheets(1) End Sub 上記はマクロの自動記録で行ったものですが、このマクロが入ってるbookを名前を変えて保存して(例えば"顧客管理"など)上記を実行すると、上記3行目のbookの名前でないのでエラーが出てきます。上記のbookを名前を変えて保存すると3行目の部分もそれに合わせて自動で変わるように(入力→顧客管理)出来ますでしょうか。

  • エクセル マクロで自動実行と終了について

    エクセルで作ったマクロを自動実行・自動保存・自動終了したいので、下記のような 記述のマクロをつくり、Windowsのタスク処理で1回/日実行させようとしています。 ----<ここから>------------------------------------ Sub Auto_Open()    :   :   Workbooks("ekuseru.xls").Close SaveChanges:=True End Sub ----<ここまで>------------------------------------ 質問その1  マクロを編集したい場合はどうすればいいのでしょう?  そのBookを開くとマクロが動き出し、保存した上で終了してしまいます。  マクロ無効でBookを開くと「ツール」⇒「マクロ」⇒「マクロ」で「編集」はクリッ  クできないようになってます。 質問その2  マクロが終了するとき、Bookは閉じますがエクセル自体は閉じません。  (意味通じますか?)  エクセル自体を閉じるにはマクロの記述はどうすればいいのでしょう? 以上、よろしくお願いします。

  • 他ブックを実行するマクロ

    あるexcelファイル(ブック名「自動操作.xlsm」)からべつのexcelファイル(ブック名「a.xlsm」)というファイルを実行するマクロを組んでいます。 Application.Runを用いて「自動操作.xlsm」のコードを以下のように記述しました。 ※「\」は半角の円マークだと考えてくれればいいです。ここで半角の円マークをかいても\と表示されます。また、自動操作とaは同じディレクトリにあります。 Sub Test1() Application.Run "'C:Users\ディレクトリ名\a.xlsm'!test" End Sub また、「a.xlsm」は以下のように記述しました。 Sub test() Dim i As Integer For i = 1 To 5 '移動元ファイルパスの設定 Cells(i, 1) = i Next End Sub ただ1~5行にその行数を記入するマクロです。 a.xlsmを開いた状態でこれを実行すると、「アプリケーション定義またはオブジェクト定義のエラーです」とでます。 a.xlsmを閉じた状態で実行すると、「このブックでマクロが使用できないか、またはすべてのマクロが無効になっている可能性があります」とでます。 いったいなにを間違えているのでしょうか。

  • エクセル2007マクロ シート間のセルコピー

    [Sheet1]にあるデータを[Sheet2]にコピーするマクロボタンを[Sheet2]に作りたいのですが、マクロがよく分からないので、「マクロの記録」で作成してみました。 Sub siken() ' ' siken Macro ' ' Sheets("Sheet1").Select Range("A1").Select Selection.Copy Sheets("Sheet2").Select Range("A1").Select ActiveSheet.Paste Sheets("Sheet1").Select Range("B3").Select Application.CutCopyMode = False Selection.Copy Sheets("Sheet2").Select Range("B3").Select ActiveSheet.Paste Sheets("Sheet1").Select Range("B6:D6").Select Application.CutCopyMode = False Selection.Copy Sheets("Sheet2").Select Range("B6").Select ActiveSheet.Paste End Sub (実際はもっと多くのセルをコピーします) マクロを実行すると、ちゃんとコピーできるのですが、セルをコピーする都度[Sheet1]と[Sheet2]が交互に表示されます。 コピー元の[Sheet1]を表示させずにマクロを実行させるにはどのようにしたらよいのでしょうか? よろしくお願いします。

  • Excelマクロで同じブックにCSVを読み込むには

    Excelの指定したシートにCSVファイルを読み込ませたいのですが 以下のVBAマクロを実行すると新しいブックが起動して 新しいブックの方にCSVファイルが読み込まれてしまうのですが これをVBAマクロを実行しているブックの指定のシート(例えばSheet3など)に 読み込ませたいのですがどのように記述すればよいのでしょうか。 よろしくお願いします(Excel2010) Sub Macro1()  ChDir "C:\test"  Workbooks.Open Filename:= "test1.csv" End Sub