• ベストアンサー

Excelマクロ 曜日自動入力方法

マクロ初心者です。 こちらのサイトから日付の自動入力の方法がわかりました。 Sub Macro1() Dim f As String f = ActiveCell.NumberFormat ActiveCell = Now End Sub ↑の右セルに曜日を自動入力したいのですが・・・ 追加するコード?を教えてほしいです。 (選択したセルA1には"7/24"をセルB1"土" のマクロ)

  • eicou
  • お礼率31% (7/22)

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

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

こんにちは。 例えば、こんな感じになります。 '------------------------------------------- Sub Macro2() '選択したセルには、例えば、"7/25"をセルB1"土"を出すマクロ   Dim myDate As Variant   With ActiveCell     myDate = Date     .NumberFormatLocal = "m/d"     .Value = myDate     .Offset(, 1).Value = Format$(myDate, "aaa")   End With End Sub

eicou
質問者

お礼

ありがとうございました。 私の希望とおり日付と曜日のマクロでしたが、 Wendy02さんのマクロは時間も表示できることは思いつかなかったです。 (マクロ実行した時間も確認できる)

その他の回答 (1)

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.1

下記でできます。 Sub Macro1() Dim f As String f = ActiveCell.NumberFormat ActiveCell = Now ActiveCell.Offset(0,1) = Format(Now,"aaa") End Sub

eicou
質問者

お礼

ありがとうございました。 時間も表示されていたので、こちらを採用させて頂きます。 (セルの書式設定にて"mm/dd"とし、セルを選択すると時間も確認できました)

関連するQ&A

  • 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 マクロ

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

  • エクセル2007 マクロの勉強

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

  • マクロの自動記録について

    Sub Macro1() 'Macro1 Macro 'Keyboard Shortcut:Ctrl+a Application.Run"ATPVBAEN.XLA!Sample",Worksheets("sheet1").Range("$A$2:$AD$31"),ActiveCell,"R",10,False ActiveCell.Offset(0,1).Select End Sub  これは、マクロの自動記録を用いて、『ツール>分析ツール>サンプリング』の動作を自動的に生成されたマクロ(プログラム)を書き直したものです。  このマクロを実行しようとすると、『実行時エラー'1004':'ATPVBAEN.XLA'が見つかりません。ファイル名およびファイルの保存場所が正しいか確認してください。』と出て、マクロが実行できません。どうすればよいでしょうか?

  • 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の内容とならず直接入力となっています。 これをどう変更すればいいでしょうか?

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

    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 -----------

  • 列幅、行の高さを指定するマクロ

    元マクロ初心者(今はほとんど忘れています)です。 列幅、行の高さを変更するマクロを以前作りました。 セルに指定する列幅を入力するのですが、 最近100以上の値の時はスキップされることに気づきました。 100以上の値でも処理されるようにするにはどうすればよいでしょうか。 Sub 列幅変更マクロ() ' ' Macro1 Macro ' マクロ記録日 : 2004/1/31 ユーザー名 : ' 列幅の変更 ' Keyboard Shortcut: Ctrl+l ' If MsgBox("→:列幅を変更します。右の方向にセル内の数値に従って処理しています。一番右のセルに半角で「@」を終わりの印として入力してください。", vbOK) = 1 Then Do Until ActiveCell.Value = "@" If ActiveCell.Value < 100 Then If ActiveCell.Value > 0 Then Selection.ColumnWidth = ActiveCell.Value End If End If ActiveCell.Offset(0, 1).Select Loop End If End Sub Sub 行の高さ変更マクロ() ' ' Macro2 Macro ' マクロ記録日 : 2004/2/1 ユーザー名 : ' 行の高さ変更 ' Keyboard Shortcut: Ctrl+p ' If MsgBox("↓:行の高さを変更します。下の方向にセル内の数値に従って処理しています。一番下のセルに半角で「@」を終わりの印として入力してください。", vbOK) = 1 Then Do Until ActiveCell.Value = "@" If ActiveCell.Value < 100 Then If ActiveCell.Value > 0 Then Selection.RowHeight = ActiveCell.Value End If End If ActiveCell.Offset(1, 0).Select Loop End If End Sub

  • Excelのマクロについて

    Excelについて全くの初心者で、今から勉強を始めるところですが、急遽、次のようなマクロを作成したいです。 アクティブなセルから右に6つ目のセルとそのセルから右に1つ、下に1つ目のセルに現在の時間を記入 どのように記述すればよいでしょうか。 ちなみに、的はずれかもしれませんが、以下のようなマクロを作りましたが、うまくいきませんでした。 よろしくお願いします。 Sub 時間入力() ActiveCell.Offset(0, 6).Activate SendKeys "^(:)" SendKeys "{TAB}" ActiveCell.Offset(1, 0).Activate SendKeys "^(:)" SendKeys "{TAB}" End Sub

  • エクセル マクロ 検索

    お世話になります。 範囲がA2からK221までの表があります。 検索して検索されたセルの左のセルを表示するマクロを組みたいのですが、検索する文字(数値)はE1に、検索結果はK1に表示するようにするにはどのようにしたらいいでしょうか? Sub FIND_DATA1() ' FIND_DATA1 Macro ' マクロ記録日 : 2006/9/1 ユーザー名 : ' Cells.Find(What:=Range("E1").Value, After:=ActiveCell, lookAt:=xlWhole).Activate End Sub Sub Data_Find3() Dim 対象セル As Range Dim 最初のセル番地 As String Dim 検索件数 As Long Cells.Interior.ColorIndex = xlNone If Range("E1").Value = "" Then Exit Sub End If Set 対象セル = Cells.Find(What:=Range("E1").Value, After:=ActiveCell, lookAt:=xlWhole) 最初のセル番地 = 対象セル.Address Do 対象セル.Interior.ColorIndex = 37 検索件数 = 検索件数 + 1 Set 対象セル = Cells.FindNext(対象セル) Loop While 対象セル.Address <> 最初のセル番地 MsgBox "検索件数は" & 検索件数 - 1 & " 件です" End Sub 本を見たり調べたりでここまでできたんですがこれだと検索件数、検索結果が色付きになるだけで使い勝手がいまいちです。 よろしくお願いします。

  • セルの現在時刻表示の更新間隔をセルから入力したい

    セルの現在時刻表示の更新間隔をセルから入力したい マクロは以下を使用してますが更新間隔変更のtimevalue(c3)とするとエラー13が出ます。 どなたかお教え下さい。 ******************************************** Sub Auto_Open() Dim TargetTime, WaitTime TargetTime = Now + TimeValue("00:00:01") WaitTime = TimeValue("00:00:10") Application.OnTime TargetTime, "Macro1", WaitTime End Sub Sub Macro1() Dim TargetTime, WaitTime Calculate TargetTime = Now + TimeValue("00:00:01") 'ココをセルにするとエラー13がでる WaitTime = TimeValue("00:00:10") Application.OnTime TargetTime, "Macro1", WaitTime End Sub Sub auto_close() Dim i As Integer, TargetTime On Error Resume Next For i = 1 To 10 TargetTime = Now + TimeValue("00:00:" & Application.Text(i, "00")) Application.OnTime TargetTime, "Macro1", , False Next i End Sub **********************************************

専門家に質問してみよう