No.3ベストアンサー
- 回答日時:
こんにちは。
=INDIRECT("Sheet"&REPLACE(CELL("filename",A1),1,FIND("eet",CELL("filename",A1))+2,"")-1&"!A1")
このようにして、Indirect 関数を使う方法もありますが、再計算関数ですので、後々、面倒なことになります。ですから、以下のようなマクロを作ってみました。
使い方:
最初に、該当するシートまたは、全部のシートを選択します。
次に、式を入力するセルにセルポインターを置きます。
Alt+F8 で、登録された、FormulaEnterという名前のマクロを探します。
式の中に入るセルの場所を聞いてきますので、それをマウスで選択します。
どのように入るか、例が出てきますので、良ければ、OK を押してください。
全部のシートを選択しても、最初のシートには、式は入力はされません。
マクロの登録
'<標準モジュールがベターですが、どこでもよいです。>
Sub FormulaEnter()
'前のシートを参照して、式を作るマクロ
Dim myAdd As String, ActivecellAdd As String
Dim mySheets As Sheets
Dim ShIndex As Integer
Dim ws As Worksheet
Dim msg As String
Dim myRng As Range
Set mySheets = ActiveWindow.SelectedSheets
ActivecellAdd = ActiveCell.Address(0, 0, 1)
If mySheets.Count = 1 Then MsgBox "複数のシートを選択してください。": Exit Sub
On Error GoTo ErrHandler
Set myRng = Application.InputBox("現在のシートで、参照するセル位置を指定してください。", Type:=8)
myAdd = myRng.Address(0, 0)
If ActiveSheet.Index = 1 Then ShIndex = 2 Else ShIndex = 1
msg = "=" & mySheets(ShIndex).Previous.Name & "!" & myAdd
If MsgBox("例:" & ActivecellAdd & "の位置に、以下のように入力されます。" & vbCrLf & vbCrLf & _
msg & vbCrLf & vbCrLf & "よろしいですか?(Sheet1に該当するシートには入力されません。)", vbOKCancel) = vbOK Then
For Each ws In mySheets
If ws.Index <> 1 Then
ws.Range(ActivecellAdd).FormulaLocal = "=" & ws.Previous.Name & "!" & myAdd
End If
Next ws
End If
ErrHandler:
mySheets(1).Select
Set mySheets = Nothing
End Sub
ご回答有り難う御座いました。
早速実行してみましたところ、、、
私の望んでいたものは、これです!
VBって、いや、Wendy02さますごいですねえ。
感激しました。
またご指導のほど、よろしくお願いします!
No.2
- 回答日時:
こんにちは。
maruru01です。以下のような方法があります。
まずは準備。
メニューの[挿入]→[名前]→[定義]で名前定義のダイアログを表示します。
そこで、
[名前]:適当な名前(仮に「次シート名」とします。)
[参照範囲]:「=INDEX(GET.WORKBOOK(1),GET.DOCUMENT(87)+1)&LEFT(NOW(),0)」
と設定して[OK]します。
そうしたら「1日」のシートのA1に、
=INDIRECT("'"&次シート名&"'!B1")
と入力します。
なお、この時2枚目のシートが何もないとエラーになりますが、構いません。
後は、このシートをコピーして増やせばいいです。
ちなみに、一番後ろ(シートタブが一番右)のシートには当然この数式は入れません。
もし既にシートを作ってある場合は、シートタブで先頭から一番後ろ(右)のシートを除いたシートまでをまとめて選択して、A1に上記の数式を入力します。
なお、シート位置で判断していますので、シート名を変更しても自動的に対応します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelで日報を自動で作成したい 売上管理シートに入力した売上データを、日報に自動反映させたいと考 1 2023/04/29 18:07
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- Excel(エクセル) Excel 売上管理シートに入力した売上データを、日報に自動反映させたいと考えています。 売上管理シ 3 2023/04/29 18:08
- Visual Basic(VBA) 顧客ごとに違う点検案内を作成するマクロ 4 2022/09/16 05:34
- Excel(エクセル) Excel ある日の45日後の計算 及び 3か月後の計算 6 2022/04/05 13:44
- その他(プログラミング・Web制作) python文字化けエラーが発生しているようです 3 2022/04/13 19:41
- Excel(エクセル) シート参照を含む数式を連続コピー 3 2022/12/10 11:42
- Excel(エクセル) 並べ替え、ソートの構文がわからない。 お世話になります。VBA超初心者です。 エクセルでワークシート 2 2023/06/28 21:00
- Excel(エクセル) excelで検索した商品の画像(ネットワーク上の)を表示させたい。 3 2023/06/28 00:32
- Excel(エクセル) 【マクロ】ボタンを押すごとに、A1セル、A2セル、A3セルに日付を入力 3 2023/01/25 00:12
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
EXCELで1ヶ月分の連続した日付をシート名+セルに表示させたい
Excel(エクセル)
-
Excelで同じシートのコピーを一気に複数作りたい
Excel(エクセル)
-
エクセルのシート毎に日付
Excel(エクセル)
-
-
4
シートをたくさんコピーするには?シートを日付順にコピーするには?
Excel(エクセル)
-
5
1ヶ月分の日付を一度に出す方法はありますか?
その他(パソコン・スマホ・電化製品)
-
6
日付だけを変更して印刷(Excel)
Excel(エクセル)
-
7
エクセルのシート間で連続した日付データを作りたい
Excel(エクセル)
-
8
再質問です。エクセルでシートが1から31まであり、日付けが入力されているセルがあります。シート1から
Excel(エクセル)
-
9
Excelでシートに年月を自動で変更するやり方
Excel(エクセル)
-
10
エクセル 日付 指定 連続印刷
Excel(エクセル)
-
11
EXCELで複数のシートを一度に「シートの保護」することはできますか?
Excel(エクセル)
-
12
EXCEL(できればマクロ)で同一フォーマットのシートを31日分簡単に作成する方法は?
Excel(エクセル)
-
13
エクセル:シート名を手入力でなく、セル「A1」の文字を出したい。
Excel(エクセル)
-
14
すべてのシートを選択してエクセルの入力規則
Excel(エクセル)
-
15
28日~31日が必要ない所を空白表示にする方法
Excel(エクセル)
-
16
Excelで日報から月報へとデータ参照をさせたい。
Excel(エクセル)
-
17
月が変わったら自動でシートが複製される方法を教えてください。
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
スプレッドシートの関数VLOOKUP...
-
Excelで同じシートのコピーを一...
-
EXCEL:同じセルへどんどん足し...
-
エクセルでファイルを開いたと...
-
前の(左隣の)シートを連続参...
-
エクセルの複数シートの保護を...
-
シートの保護のあとセルの列、...
-
VBA セルの値と同じ名前のシー...
-
別シート参照のセルをシート毎...
-
エクセルVBAでパスの¥マークに...
-
エクセルで前のシートを連続参...
-
EXCELで1ヶ月分の連続した日付...
-
EXCELで同一フォーマットのシー...
-
エクセルでファイル保存時に複...
-
複数シートの特定の位置に連番...
-
エクセルのシート名をリスト化...
-
シート番号からシート名を取得する
-
複数のピボットを同じフィルタ...
-
シートを任意の日付で自動で作...
-
エクセルで前シートを参照して...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelで同じシートのコピーを一...
-
エクセルの複数シートの保護を...
-
Excelで金銭出納帳。繰越残高を...
-
エクセルでファイルを開いたと...
-
EXCELで1ヶ月分の連続した日付...
-
エクセルVBAでパスの¥マークに...
-
EXCEL:同じセルへどんどん足し...
-
シートの保護のあとセルの列、...
-
別シート参照のセルをシート毎...
-
エクセルで前のシートを連続参...
-
前の(左隣の)シートを連続参...
-
EXCELで同一フォーマットのシー...
-
VBAでシートコピー後、シート名...
-
Excel 連番を入力する方法
-
エクセル 計算式も入っていない...
-
エクセルで前シートを参照して...
-
エクセルでシート名を自動入力...
-
Accessのスプレッドシートエク...
-
複数シートの特定の位置に連番...
-
エクセルのシート名をリスト化...
おすすめ情報