
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
=CELL("filename",A1)
と入力する。
これで、
C:\Users\cocoamark\Documents\[exsample.xlsx]シート1
…だろ?
あとはここから「シート1」の部分の「1」を取り出せば良い。
取り出し方は面倒だからRIGHT関数で切り出す例を示してみます。
=RIGHT(CELL("filename",A1),1)
これで
C:\Users\cocoamark\Documents\[exsample.xlsx]シート1
の文字列の一番右の文字「1」だけを切り出せる。
C:\Users\cocoamark\Documents\[exsample.xlsx]シート2
だったら「2」が返ってくるということです。
2桁になった場合を考慮して別の方法を使ってください。
・・・なぜかINDIRECT関数のレクチャー・・・
で、INDIERECT関数。
これは、文字列でセル番地を指定できる関数です。
B10セルに "F25" と文字、
B11セルに 「25」 と数値、
F25セルに "おめでとう" と文字列、
…が入力されていた場合、
=INDIRECT(B10)
とすると、B10セルの文字列 ”F25” をそのままセル番地として参照する。
すると
=INDIRECT(B10)
↓
=INDIRECT("F25")
↓
=F25
↓
"おめでとう"
と処理が行われ、値が返ってくる。
これの応用で、
=INDIRECT( "F" & B11 )
とすると、
=INDIRECT( "F" & B11 )
=INDIRECT( "F" & 25 )
=INDIRECT( "F25" )
=F25
"おめでとう"
となる。
OK?難しくないよね。
B11セルの「25」という数値を変えてやれば、F列の別の行の値を参照できるってことです。
=INDIRECT( "シートあ!A" & RIGHT(CELL("filename",A1),1) ) )
とすれば、「シートあ」のA1セルやA2セルをシート名から指定することができるってわけです。
・・・【投げやりな回答】(質問者さんはこれだけが欲しいのだろうと思う)・・・
ひな形を理解して無くてあとで困ることになるのは質問者さん(とその関係者)なんだから、まあ良いか。
分かったつもりにさせちゃおう。
=INDIRECT("シートあ!A"&MID(CELL("filename",A1),FIND("シート",CELL("filename",A1),1)+3,2))
これを「シート1」から「シート12」までのA1セルに書き込めばいい。
そうすれば、1月から12月までの賃金台帳当月分基本給を参照できる。
>【投げやりな回答】
書いて下さった数式にシート名等入力してみましたが、#VALUE!になってしまいます。
どこかの指定を間違えてるんでしょうね...
せっかく教えて頂きましたので、値が返ってくるようにもう少し頑張ってみます。
本当に、何度もご丁寧にありがとうございました!
No.3
- 回答日時:
>(数字が増えるだけなら、数字だけを切り取ってINDIRECT関数に渡すという方法が分かりやすいでしょう)
……なんかこれがクリティカルヒットしている気がするんだけど、ダメ?
・・・
素人さんということであれば、代行業者に作成依頼することを強く勧めます。
ええ、対価を支払ってね。
(ここは作成依頼をする場所ではなく自分で解決できるようにアドバイスをもらう場所です)
何の責任も負わない第三者が作ったものをそのまま使うなんて怖いことしちゃダメだぞ。
自分で作れるようになりましょう。でなければお金を払って作ってもらいましょう。
度々ありがとうございます。
>INDIRECT関数に渡す
この関数が初めてでしたので、webページを参考にしながら試し試しやっています^^
エクセルは独学で勉強中です。
周りにできる人はいても、私の知りたいことがわかる人がいなくって...
給料明細と言っても数名分なので、1セルごと参照させても大した時間はかからないのですが、せっかくエクセルを使うなら、と思って質問させて頂きました。
ありがとうございました。
No.2
- 回答日時:
CELL関数でシート名を取得してみよう。
あとはいろいろと工夫すればOK。
シート名を取得したいシートの空いているセルに、
=CELL("filename",A1)
と入力する。
これで、
C:\Users\cocoamark\Documents\[exsample.xlsx]シート1
…のような感じに値が返ってきます。
(新規にシートを追加した場合は、上書き保存など一度「保存」をしないと反映されないことがあります)
工夫…はシートの追加に関わる条件によるので、質問文からはちょっと具体的な方法のアドバイスは無理。
(数字が増えるだけなら、数字だけを切り取ってINDIRECT関数に渡すという方法が分かりやすいでしょう)
No.1
- 回答日時:
こんにちは!
後半部分は無視して・・・
単に各シートのA1セルに「シートあ」のA1以降のデータを順に表示する方法です。
VBAになりますが、一例です。
尚、「シートあ」はシート見出しの一番最後(一番右側)にあるという前提です。
標準モジュールにしてください。
Sub Sample1()
Dim k As Long
Dim wS As Worksheet
Set wS = Worksheets(Worksheets.Count)
For k = 1 To Worksheets.Count - 1
Worksheets(k).Range("A1") = wS.Cells(k, "A")
Next k
End Sub
とりあえずは質問文の最初の操作はできていると思います。m(_ _)m
早速のご回答ありがとうございます。
私にはVBAの知識が全くありません。
それ以前にエクセル自体基礎的な操作程度しかできてないと思います。
もう少し簡単な方法がありましたら、ご教授頂けますと幸いです。
宜しくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) ユーザー定義について質問です。 2 2023/06/28 13:21
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 3 2023/02/28 01:13
- Visual Basic(VBA) Excel VBA 最終行を取得しVlookup関数をコピーする方法をコーディングで教えてください。 3 2023/05/11 13:14
- Excel(エクセル) シート参照を含む数式を連続コピー 3 2022/12/10 11:42
- Visual Basic(VBA) VBAマクロでシートコピーした新シートにコピー元シートとの計算式の入れ方を教えて下さい。 5 2022/11/20 09:48
- Excel(エクセル) Excel セルに入っている日付を参照して、別シートのリストを表示させたい 1 2022/04/12 17:02
- Visual Basic(VBA) 顧客ごとに違う点検案内を作成するマクロ 4 2022/09/16 05:34
- Excel(エクセル) エクセルのマクロでコピー後の貼り付け先を毎回指定したところにしたい 5 2022/08/12 10:47
- Excel(エクセル) IFERROR、SMALL関数について 2 2022/08/22 23:40
- Excel(エクセル) エクセルのマクロについて教えてください。 3 2023/02/07 14:47
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセルのセル参照、一つずつ参照セルをずらしていきたい
Excel(エクセル)
-
シートごとに参照先セルを変更するには
Excel(エクセル)
-
エクセルのシートコピーした際に数式を月移動したい(?)
Excel(エクセル)
-
-
4
セルを決まった数だけずらしていく方法
Excel(エクセル)
-
5
エクセルの参照先が固定されてしまうため、ずらすことは出来ないのでしょうか。教えてください。
Excel(エクセル)
-
6
【エクセル関数】参照するセルを一定数ずつ増やす
Excel(エクセル)
-
7
エクセルで前のシートを連続参照したい
Excel(エクセル)
-
8
エクセルでシート名を連続で参照するには
Excel(エクセル)
-
9
エクセルで、月によって参照するシートを自動的に変える関数
Excel(エクセル)
-
10
EXCEL 参照セルを2列ずらしたいです
Mac OS
-
11
前の(左隣の)シートを連続参照するように、あとから変更したい
Excel(エクセル)
-
12
月毎に参照するセルを変更したい。
Excel(エクセル)
-
13
別シートのセルを絶対参照にする
その他(Microsoft Office)
-
14
エクセルで別シート参照のセル番地を6ずつ増やすためには?
Excel(エクセル)
-
15
参照するセルを月ごとに変更したい
Excel(エクセル)
-
16
エクセルで他のシートを動的に参照する(シート名だけ)
Excel(エクセル)
-
17
excel:別シートの値を飛び飛びで参照させたい
Excel(エクセル)
-
18
エクセルの複数のセルを一括で絶対参照にする方法
Excel(エクセル)
-
19
Excelの数式のコピーで列移動で行番号を変えたいのですが
Windows Me・NT・2000
-
20
参照するシートを月ごとに変更したい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
特定のセルだけ結果がおかしい...
-
エクセルで前シートを参照して...
-
エクセルの複数シートの保護を...
-
別シート参照のセルをシート毎...
-
前の(左隣の)シートを連続参...
-
エクセルでファイルを開いたと...
-
EXCEL:同じセルへどんどん足し...
-
特定のシートの削除を禁止した...
-
Excel、同じフォルダ内のExcel...
-
エクセルで前のシートを連続参...
-
Excelで金銭出納帳。繰越残高を...
-
エクセルで複数シートを別のシ...
-
エクセルで「ウィンドウを元の...
-
VBAでシートコピー後、シート名...
-
複数シートの特定の位置に連番...
-
EXCELで1ヶ月分の連続した日付...
-
VBAで条件によりフォントサイズ...
-
Excelのシートを、まとめて表示...
-
エクセル 計算式も入っていない...
-
複数のシートの同じセルに入力...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルの複数シートの保護を...
-
前の(左隣の)シートを連続参...
-
別シート参照のセルをシート毎...
-
エクセルでファイルを開いたと...
-
特定のシートの削除を禁止した...
-
Excelで金銭出納帳。繰越残高を...
-
エクセルで前シートを参照して...
-
エクセル 計算式も入っていない...
-
EXCEL:同じセルへどんどん足し...
-
Excel、同じフォルダ内のExcel...
-
複数シートの特定の位置に連番...
-
エクセルVBAでパスの¥マークに...
-
Excelのシートを、まとめて表示...
-
VBAで条件によりフォントサイズ...
-
【Excel関数】値が合致するセル...
-
Accessのスプレッドシートエク...
-
エクセルで前のシートを連続参...
-
VBAでシートコピー後、シート名...
-
EXCELで1ヶ月分の連続した日付...
-
シートの保護のあとセルの列、...
おすすめ情報
質問の説明が不十分、わかりづらいようで申し訳ありません。
もう少し具体的に説明させて頂きます。
「シート1~3」は同じ様式で、参照元のセルだけ、シート毎に規則的にずれさせたいのです。
給料明細用のファイルがあります。
その中の1シートが賃金台帳(シートあ)です。
給料明細1月分の基本給のセル(シートA:A1)は、賃金台帳1月分基本給(シートあ:A1)を参照します。
給料明細2月分の基本給のセル(シートB:A1)は、賃金台帳2月分基本給(シートあ:A2)を参照します。
給料明細3月分の基本給のセル(シートC:A1)は、賃金台帳3月分基本給(シートあ:A3)を参照します。
という内容です。
これを、シートをコピーする度に自動的にずれさせられたら、便利だな、と思っての質問でした。
素人でもわかる方法がありましたら、宜しくお願い致します。
※質問と補足でシート名を間違えてしまって申し訳ありません
「シート1」=「シートA」です。以下、「シート1」で統一させて頂きます。
>「INDIRECT関数」
この関数は質問内容の「シート1」のセルに「シートあ」の数値を反映させる時の関数かな、と思いましたが違いますでしょうか?
今まで、この関数を使ったことはないのですが、単純に「シート1:A1セルに<=(シートあ:A1)>クリック」で反映させていました。
なので、「シート1」を作ることはできています。
この作った「シート1」をコピーした時に自動的にセル番号が変わらないかな、と考えています。
INDIRECT関数に関するページをいくつか読んでいるのですが、複数シートの数値それぞれを1シートに反映させる方法は書いてあるのですが、1シートから複数シートに反映させる方法が見つけられずにいます...
何度もありがとうございます。
読ませて頂きましたが、今すぐには理解できませんので、再度、実践しながらやってみます。
また、改めてお礼をさせていただきます。