
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
回答:No.3です。
>すいません。上記のようにしても数値がでてきません。
>シートは日付を入れています。
済みません、回答:No.3の方法ですが、質問者様個人がどの様なパターンでシート名を決めておられるかという情報が無かったため、取り敢えずとして、単純にコピーシートを複製しただけの場合に関して回答させて頂いたものです。
ですから、シート名を書き換えて、括弧付きの数字を削除してしまった後の状態に対しては、回答:No.3の方法は対応しておりません。
シート名が日付となっている場合に対しては、また別の関数を組む事で対応可能になると思われます。
但し、
>たとえば 12.1 12.2のように日ごとシートを増やしていきます。
という形式のシート名には、何年の日付になるのかという情報がありませんから、そのままでは前日の日付が何日になるのかが不明となる場合が出て来ますので、現行のシート名の名付け方では、御望みの結果を得ることは出来ないと思います。
例えば、3.1というシートの前日のシートは、どのシートになると思われますか?
2012年であれば3.1の前日のシートは、2.29になりますが、2013年であれば2.28になるはずです。
この様に、年によって前日にあたるシートが変化しますので、年の情報がなければ前日のシートを正しく選択する事は出来ません。
ですから、シート名をあくまで日付を基にした名称とされたいのでしたら、シート名を例えば、
2012-3-1
や
H24.3.1
といった、年数の情報を含んだものにされるか、或いは、各日毎のシートの決まったセルに、年数を入力しておくようにされるか、どちらかの方法を取らなければなりません。
従いまして、シート名の決め方を変更される場合には、どの様な形式のシート名に変更されるのかを、そして、特定のセルに年数を入力しておかれるのでしたら、そのセルのセル番号を、それぞれ御教え頂かなくては、回答者は関数を組む事が出来ませんので、現行の方法から、どの様な方法に変更されるのかをお決めになられてから、どうされるのかを御教え願います。
No.3
- 回答日時:
>シートを追加して
という操作を行う際に、おそらくは元のシートのコピーシートを作成しておられるかと思いますが、その際、元のシート名が例えば「Sheet1」であった場合には、コピーシートのシート名は「Sheet1 (2)」になるかと思います。
この事を利用して自動的に前のシートのセルを参照させるには、次の様にされると良いかと思います。
まず、元のシートのシート名を「『元のシート名』+『半角スペース』+『(1)』」という形式に変更して下さい。
例えば、元のシートの元々のシート名が「Sheet1」であった場合には、「Sheet1 (1)」に変更して下さい。
次に、そのシートのコピーシートを複製しますと、コピーシートのシート名は「Sheet1 (2)」になるかと思います。
そして、例えばSheet1 (2)のE1セルに、Sheet1 (1)のA1セルのデータを表示させる場合には、Sheet1 (2)のE1セルに次の関数を入力して下さい。
=IF(ISERR(1/(INDIRECT("'"&REPLACE(LEFT(CELL("filename",E1),FIND("(",CELL("filename",E1),FIND(".xls",CELL("filename",E1)))),1,FIND("]",CELL("filename",E1),FIND(".xls",CELL("filename",E1))),)&REPLACE(LEFT(CELL("filename",E1),LEN(CELL("filename",E1))-1),1,FIND("(",CELL("filename",E1),FIND(".xls",CELL("filename",E1))),)-1&")'!"&CELL("address",A1))<>"")),"",INDIRECT("'"&REPLACE(LEFT(CELL("filename",E1),FIND("(",CELL("filename",E1),FIND(".xls",CELL("filename",E1)))),1,FIND("]",CELL("filename",E1),FIND(".xls",CELL("filename",E1))),)&REPLACE(LEFT(CELL("filename",E1),LEN(CELL("filename",E1))-1),1,FIND("(",CELL("filename",E1),FIND(".xls",CELL("filename",E1))),)-1&")'!"&CELL("address",A1)))
上記の関数は、セルの参照形式が相対参照の場合の関数になりますが、もし参照形式を絶対参照とする場合には、関数の中に2ヶ所ある
CELL("address",A1)
という部分の中の「A1」という記述を「$A$1」に変更して、
=IF(ISERR(1/(INDIRECT("'"&REPLACE(LEFT(CELL("filename",E1),FIND("(",CELL("filename",E1),FIND(".xls",CELL("filename",E1)))),1,FIND("]",CELL("filename",E1),FIND(".xls",CELL("filename",E1))),)&REPLACE(LEFT(CELL("filename",E1),LEN(CELL("filename",E1))-1),1,FIND("(",CELL("filename",E1),FIND(".xls",CELL("filename",E1))),)-1&")'!"&CELL("address",$A$1))<>"")),"",INDIRECT("'"&REPLACE(LEFT(CELL("filename",E1),FIND("(",CELL("filename",E1),FIND(".xls",CELL("filename",E1)))),1,FIND("]",CELL("filename",E1),FIND(".xls",CELL("filename",E1))),)&REPLACE(LEFT(CELL("filename",E1),LEN(CELL("filename",E1))-1),1,FIND("(",CELL("filename",E1),FIND(".xls",CELL("filename",E1))),)-1&")'!"&CELL("address",$A$1)))
等として下さい。(「E1」と記述されている部分に関しては、相対参照のままで構いません)
この回答への補足
すいません。上記のようにしても数値がでてきません。
シートは日付を入れています。
たとえば 12.1 12.2のように日ごとシートを増やしていきます。
新しいシートに前日の数値の増減を自動計算したいのです。
この文章で分かりますでしょうか?
宜しくお願いいたします。
No.2
- 回答日時:
例えばシートが追加されていくときにSheet4、Sheet5、Sheet6といった場合でしたら次のような式で対応できますね。
例えばSheet5が追加されたときにSheet4のA列のデータをSheet5のA列に表示させるとしたらシート5のA1セルには次の式を入力して下方にドラッグコピーします。
=INDIRECT("Sheet"&TRIM(MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+6,10))-1&"!A"&ROW(A1))
この式でしたら常にシート番号がj一つ下のシートのデータを表示させることができます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA 最終行まで数式をコピーする 3 2023/01/03 15:44
- Excel(エクセル) ユーザー定義について質問です。 2 2023/06/28 13:21
- Excel(エクセル) 再質問です。エクセルでシートが1から31まであり、日付けが入力されているセルがあります。シート1から 4 2022/08/02 23:08
- Excel(エクセル) 条件に合った数値の合計を表示させたい関数と条件指定の方法 3 2023/05/13 16:07
- Excel(エクセル) 前の(左隣の)シートを連続参照するように、あとから変更したい 1 2023/02/22 00:51
- Excel(エクセル) エクセルで 同じシートにある2ページに、おなじページをつけたい 3 2022/07/11 16:15
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Excel(エクセル) マクロ作成初心者です。CSVファイルの日付データについて 3 2022/12/14 06:02
- Excel(エクセル) エクセルの数式について ブック内の別シートの値の含まれたセルの個数を集計したい 全シート一覧のシート 1 2022/07/21 19:28
- Excel(エクセル) 条件書式でリスト内以外の単語に色をつけたい 1 2022/09/23 13:23
このQ&Aを見た人はこんなQ&Aも見ています
-
前の(左隣の)シートを連続参照するように、あとから変更したい
Excel(エクセル)
-
エクセルで前のシートを連続参照したい
Excel(エクセル)
-
エクセルで左隣シートの特定のセルの値を表示させたい
Excel(エクセル)
-
-
4
【Excel】 左のシートの特定セルを表示させたい
Excel(エクセル)
-
5
エクセルで、「1つ前のシート」を指定したいのです。
その他(Microsoft Office)
-
6
シート名ではなく、相対位置で指定したい。
Excel(エクセル)
-
7
シート名を取得して、隣のシートを参照する
Excel(エクセル)
-
8
エクセルで前シートを参照して累計金額をだしたい。
Excel(エクセル)
-
9
別シート参照のセルをシート毎にずらしたいです
Excel(エクセル)
-
10
エクセルのシートコピーした際に数式を月移動したい(?)
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
LinuxでWine使うとどのくらいWi...
-
Core 2 Duo の古いパソコンに最...
-
CentOSが起動時にフリーズ
-
Linux のシェルスクリプトの強...
-
ubuntu(linux)のシャットダウン...
-
Ubuntu on Xorgのログインについて
-
ubuntuのシャットダウンが進ま...
-
bashでシングルクォート内の変...
-
apacheでリバースプロキシを設...
-
ssh接続しようとしたらエラーメ...
-
windows10を使っています。 wsl...
-
lubuntuのインストールが終わり...
-
EXT4-fs error (device sdb3): ...
-
ubuntuで デイスク/deb/loopと...
-
zorin OS
-
ログにserver reached MaxReque...
-
Windowsのローカルディレクトリ...
-
次のif文について意味を教えて...
-
「/var/log」内のログの削除の...
-
Ubuntuで数字だけのユーザーア...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
LinuxでWine使うとどのくらいWi...
-
Core 2 Duo の古いパソコンに最...
-
Linux のシェルスクリプトの強...
-
ubuntu(linux)のシャットダウン...
-
bashでシングルクォート内の変...
-
ubuntuで デイスク/deb/loopと...
-
apacheでリバースプロキシを設...
-
CentOSが起動時にフリーズ
-
ubuntuのシャットダウンが進ま...
-
ubuntu が起動しない。
-
Windowsのローカルディレクトリ...
-
Ububtuでファイル共有できない...
-
Ubuntu on Xorgのログインについて
-
ログにserver reached MaxReque...
-
「/var/log」内のログの削除の...
-
ubuntu 24 へのCanon 複合機ス...
-
ssl_request_logの必要性について
-
私のパソコンでVirtualBoxは使...
-
WineのRufusでデバイスを検知す...
-
LinuxのノートパソコンでDVDコ...
おすすめ情報