• ベストアンサー

エクセル2007 マクロの勉強

マクロを勉強しようとしています。 開いたシートで決まったところに本日日付(平成24年3月11日)と曜日を入れたいと思いマクロの記録でやってみましたがこれだといつも3月11日と入るのではないでしょうか? Sub Macro4() '本日日付と曜日を入れたい Range("A7:D7").Select ActiveCell.FormulaR1C1 = "3/11/2012" Range("E7").Select   'ここで曜日を入れたい End Sub よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんにちは! 一例です。 Sheetが決まっている場合は 画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面に ↓のコードをコピー&ペーストして、そのSheetをアクティブにしてみてください。 Private Sub Worksheet_Activate() With Range("A7:D7") .Value = Date .NumberFormatLocal = "m/d/yyyy" '←「ggge年m月d日」とか・・・ End With With Range("E7") .Value = Date .NumberFormatLocal = "aaa" .Select End With End Sub ※ すべてのSheetで同様の操作を行いたい場合は Alt+F11キー → 画面左下の「This Workbook」をダブルクリックして ↓のコードをコピー&ペースト Private Sub Workbook_SheetActivate(ByVal Sh As Object) With Range("A7:D7") .Value = Date .NumberFormatLocal = "m/d/yyyy" '←「ggge年m月d日"」とか・・・ End With With Range("E7") .Value = Date .NumberFormatLocal = "aaa" .Select End With End Sub これですべてのSheetでアクティブにした場合は同様の操作になります。 こんな感じで参考になりますかね?m(_ _)m

stardelta
質問者

お礼

早速の回答ありがとうございます。 希望通りの動作です。

関連するQ&A

  • ■ エクセルマクロについてです。初級?

    エクセルのマクロでデスクトップにあるエクセルファイルを開くにはどうしたらいいのでしょうか? 現在は、エクセルファイルA.xls B.xlsという2つを開いていて、マクロを実行することができるのですが、これをA.xlsだけ開いている上体で、実行したいのです。 なので、デスクトップに置いてあるB.xlsファイルを開くコマンド?というか、関数が知りたいのですが、どうしたらいいのでしょうか? 現在はこのような感じになっております。 Sub Macro2() ' ' Macro2 Macro ' マクロ記録日 : 2008/9/10 ユーザー名 : ' ' ActiveCell.FormulaR1C1 = "12345" Range("G17").Select ActiveCell.FormulaR1C1 = "129876" Range("G18").Select Windows("B.xls").Activate Range("N16").Select ActiveCell.FormulaR1C1 = "8/4/2008" Range("N17").Select ActiveWorkbook.Save Range("O16").Select ActiveWorkbook.Save ActiveWindow.Close End Sub

  • excel マクロ

    Sub Macro1() ' ' Macro1 Macro ' ' ActiveCell.Offset(-1, 0).Range("A1:G1").Select Selection.Copy End Sub マクロの記録だけでこのコードを作ることは可能でしょうか?

  • PCのマクロについて

    Sub Macro1() ' ' Macro1 Macro ' ' ActiveCell.FormulaR1C1 = "○" Range("F5").Select End Sub Sub Macro2() ' ' Macro2 Macro ' ' ActiveCell.FormulaR1C1 = "●" Range("F5").Select End Sub こんな感じでマクロ入れたんですが図でわかると思うのですが4段目で確認未のボタンを押すと1段目のセルに選択が移動してしまいます。ボタンを押した際に最初に選択したセルから移動しないようにするにはどうすればよいですか?

  • EXCELのマクロについて

    お世話になっております。 以下のマクロを1万行分繰り返したいのですが、回数を1万回と指定する構文を 教えてください。よろしくお願いします。 Sub Macro16() ' ' Macro16 Macro ' ' Keyboard Shortcut: Ctrl+Shift+Z ' ActiveCell.Offset(1, 0).Rows("1:1").EntireRow.Select Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove ActiveCell.Offset(-1, 0).Range("A1:M1").Select Selection.Copy ActiveCell.Offset(1, 0).Range("A1").Select ActiveSheet.Paste ActiveCell.Offset(-1, 2).Range("A1").Select Application.CutCopyMode = False ActiveCell.FormulaR1C1 = "7/5/1905" ActiveCell.Offset(1, 0).Range("A1").Select ActiveCell.FormulaR1C1 = "7/6/1905" ActiveCell.Offset(1, -2).Range("A1").Select End Sub

  • Excelでマクロを使いセルの内容をコピー貼り付け

    A1セルに111と入力してあるとします。 この時B1にaaa111aaaと入力するマクロを作りたいです。 A1に222があるとB1はaaa222aaaと入力したいです。 これをマクロで作ったのですが、次のようになり、A1の内容にかかわらず常にaaa111aaaとなってしまいます。 Sub Macro1() Range("A1").Select ActiveCell.FormulaR1C1 = "111" Range("B1").Select ActiveCell.FormulaR1C1 = "aaa111aaa" Range("B2").Select Application.Goto Reference:="Macro2" End Sub これのいらない行を削除し、コピーはA1の内容となるように修正して次のようにしました。 Sub Macro1() ActiveCell.FormulaR1C1 = Range("A1") Range("B1").Select ActiveCell.FormulaR1C1 = "aaa111aaa" Application.Goto Reference:="Macro2" End Sub まだペーストするときにA1の内容とならず直接入力となっています。 これをどう変更すればいいでしょうか?

  • Excel 2007 マクロ 表の集計

    Excel 2007 マクロ 表の集計 「Sheet1」に2つの表があります。 <元データ>の項目ごとに<集計結果>の 計の列に数字が反映されるようにしたいと考えています。 表の画像を添付します。 <元データ>の項目のアルファベットごとに<集計結果>の 項目に分かれます。 マクロの記録では下記にようになりました。 Sub Macro1() ' ' Macro1 Macro ' ' Range("B15").Select ActiveCell.FormulaR1C1 = "=R[-12]C+R[-11]C+R[-10]C" Range("B16").Select ActiveCell.FormulaR1C1 = "=R[-10]C+R[-9]C" Range("B17").Select ActiveCell.FormulaR1C1 = "=R[-9]C+R[-8]C+R[-7]C" Range("B18").Select End Sub どのようにすれば、マクロでアルファベットごとに集計できるのでしょうか。 よろしくお願いいたします。

  • エクセル マクロについて

    Book1で入力データ作成し、保存次第、添付画像の黄色部分に、自動転記する様マクロを組みたいと考えています。 現在、勉強中で、簡単な下記の様なマクロはできました。 これを応用して実践してみたいのですが、何を加えればよいのか、アドバイス頂けたら幸いです。 --------- Sub Macro1() ' ' Macro1 Macro ' ' a = ActiveCell.Value Range("A2").Select ChDir "C:\Users\takana\Desktop" Workbooks.Open Filename:="C:\Users\takana\Desktop\転記.xlsx" Sheets("Sheet2").Select ActiveCell.FormulaR1C1 = "" Range("B2").Select ActiveCell.FormulaR1C1 = a Range("B3").Select End Sub -----------

  • 記号をマクロで記録することは不可能か?

    記号をマクロで記録することは不可能か? エクセル2003を使用しています。 マクロの記録→挿入→記号と特殊文字で ハートを挿入し、マクロの記録の終了をして標準モジュールを見たのですが Sub Macro1() ActiveCell.FormulaR1C1 = "?" Range("a1").Select End Sub となります。 セルにはハートが入っています。 そのあと、Macro1を実行すると、?がセルに挿入されました。 VBAで記号を挿入することは不可能のなのでしょうか?

  • セルの日付を変更したい

    アクティブシートに平成21年3月31日と表示されています。 そして次のマクロを実行すると Sub Macro1() Range("P3").Select ActiveCell.FormulaR1C1 = p3 + 20 Range("P3").Select End Sub セルP3には、明治33年1月20日と表示されます。 これを平成21年4月20日と表示させるにはどうしたらよろしいでしょうか。

  • エクセル マクロについて

    Windows10 Excel2011を使用しています リセットボタンを作成しています A~Fは氏名などの情報をいれています GH IJ KL と結合していってます BOBPまで列があります G3に日付、G4に曜日を入れてます G5午前勤務 G6午後勤務になります 月・水・金は午前午後があるので G5に 〇 、G6に 〇 を表示したい 火・木・土は午前だけなので G5に 〇 を表示したい 日 はないので  off を表示したい これを日付事に繰り返して実行したい 自分で考えたこと Sub ボタン3_Click() Range("G5:BP7").Select Selection.ClearContents Range("G5:H5").Select ActiveCell.FormulaR1C1 = "〇" Range("G6:H6").Select ActiveCell.FormulaR1C1 = "〇" End Sub この式だと固定になってしまうので 曜日ごとで表示を変えたいのですが どのようにプログラムをしたらいいのでしょうか?

専門家に質問してみよう