重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

初心者です、お願いします。
Sheets(Array("Sheet1", "Sheet2", "Sheet3")).Select

Sheets("Sheet1").Activate
Range("E1").Select
Selection.NumberFormatLocal = "G/標準" ’現在文字列
ActiveCell.FormulaR1C1 = "7/1/2008"
Range("F1").Select
Selection.NumberFormatLocal = "G/標準"  ’現在文字列    ActiveCell.FormulaR1C1 = "5/31/2009" 

上記の記述で1行目、全シートの選択を指定したいのです。
どのように変えたら良いかどなたか教えてください。

A 回答 (4件)

4つのシートを[作業グループ]にしてデータを(1セル)入れたマクロの記録が下記で'Sheets(Array("Sheet1", "Sheet2", "Sheet3", "Sheet4")).Select


がそれです。質問と同タイプ。
それをコメントアウトして、Sheets.Select
に変えたものが下記です。
Sub Macro1()
'Sheets(Array("Sheet1", "Sheet2", "Sheet3", "Sheet4")).Select
Sheets.Select
Sheets("Sheet1").Activate
Range("C4").Select
ActiveCell.FormulaR1C1 = "'XXXXXXz"

End Sub
代表でSheets("Sheet1").Activate
Range("C4").Select
とSheet1しかやってないが、全シートのC4に'XXXXXXzが入りました。
全シートで同じ位置のセル(複数可)だけに(バラバラの位置ではもちろんダメ。質問は同じ位置のセルのニーズと推測した)、何かしたいことがあれば,代表の1シートに処理すれば、全シートに同じ処理がされるようです、
ーーー
For Eachで繰り回し各シートでのコードを実行させる(ロジックを書く)必要は無いのではないかと思います。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。

お礼日時:2009/07/09 08:31

No2補足


nextのところ書き間違えです。
Next arget_sheet
です。
    • good
    • 0
この回答へのお礼

ご回答有難うございました。

お礼日時:2009/07/09 08:32

こんなのはいかがですか


Option Explicit
Sub hoge()
Dim target_sheet As Worksheet
For Each target_sheet In ThisWorkbook.Worksheets
target_sheet.Range("E1").Select
Selection.NumberFormatLocal = "G/標準" ’現在文字列
ActiveCell.FormulaR1C1 = "7/1/2008"
target_sheet.Range("F1").Select
Selection.NumberFormatLocal = "G/標準"  ’現在文字列     ActiveCell.FormulaR1C1 = "5/31/2009" 
Next sheet
Set sheet = Nothing
End Sub
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。

お礼日時:2009/07/09 08:34

おっしゃる意味をなかなか理解できませんでした。


つまりは、Sheets(Array("Sheet1", "Sheet2", "Sheet3")).Select ではSheet1~3までしか選択されないので、何枚あるかわからなくとも対応できるようにすべてのワークシートを選択するコードをご希望ということなのでしょうか?

ならば、
Worksheets.Select
でいけると思います。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。

お礼日時:2009/07/09 08:35

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!