advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 295 for cell filename (0.001 sec.)
cell (1170), filename (1984)
[[20140919155335]]
#score: 11157
@digest: 0c6d1ea6d02ad1ab28c4ecb94f166fb8
@id: 66164
@mdate: 2014-09-24T11:53:10Z
@size: 12492
@type: text/plain
#keywords: 日'! (94671), 合!$ (87487), ド結 (86975), 和代 (44946), 代) (15728), (和 (10842), ーコ (10690), ウル (10641), indirect (9441), filename (7631), ラマ (7507), マス (7181), cell (6103), 右方 (5165), マリ (4988), 勤時 (4692), 退勤 (4203), スタ (3970), 結合 (3898), replace (3768), iferror (3429), — (3103), ルト (3072), vlookup (2999), 字化 (2945), 2014 (2356), 出勤 (2087), ター (1988), トラ (1976), ト名 (1737), の式 (1625), gobgob (1487)
『関数のなかであるセルを参照する』(和代)
お世話になります。 A3からA33迄、1日から31日の日にちが並んでいます。 B2からAS3迄、名前が表示されています。 B3の式は=(IFERROR(VLOOKUP('1日'!$T$7&"_"&'1日'!$U$7,マスターコード結合!$F$2:$G$66,2,FALSE),""))&" "&('1日'!$T$7&" — "&'1日'!$U$7) 上記関数で1日はシート名を表わします。シート名は31日迄あります。 *上記関数の式を2日から31日迄とASの名前迄(B3〜AS33)にコピーしたい のですが、行、列以外のシート名はコピーするときに自動で変化しません。 いちいち、一つの関数を4箇所の日を手で替え、それを全箇所を修正するのは、3行ほど やり始めたのですが、細かい箇所を修正するので目が疲れて来ました。 そこで色々考えて、AV3〜AV33迄の場所に1日から31日表示しました。 そしてB3の式の1日をAV3に入れ替えるとAV列の1日が表示されると思ったのですが#REF!になります。 どなたかご教示して頂けないでしょうか? < 使用 Excel:Excel2007、使用 OS:Windows7 > ---- INDIRECT関数? (GobGob) 2014/09/19(金) 16:33 ---- あぁ。。。シート名ね。。。。 =REPLACE(CELL("filename",A1),1,FIND("]",CELL("filename",A2)),"") これでシート名取得 んで、INDIRECT。 =INDIRECT("'"&REPLACE(CELL("filename",A1),1,FIND("]",CELL("filename",A2)),"")&"'!T7") 見たいな感じ? (GobGob) 2014/09/19(金) 16:37 ---- GobGob様 早速のご返答有難うございました。 ?@=INDIRECT("'"&REPLACE(CELL("filename",A1),1,FIND("]",CELL("filename",A2)),"")&"'!T7")は ?@の式は、具体的には何処に入れるのでしょうか? また下記B3の式に応じて答えを表示するようにしているのですが、---?@とB3の式の関連は どのようになるのでしょうか?教えて下さい。 B3の式は=(IFERROR(VLOOKUP('1日'!$T$7&"_"&'1日'!$U$7,マスターコード結合!$F$2:$G$66,2,FALSE),""))&" "&('1日'!$T$7&" — "&'1日'!$U$7) (和代) 2014/09/19(金) 17:03 ---- 数式のシート名&セル参照してる所を例示したINDIRECT関数式に置き換える ですわ。 (GobGob) 2014/09/19(金) 18:06 ---- INDIRECT関数を使う話なら [[20140820133226]] 『項目の配置が違うデータの抽出』(和代) でやったと思いますが。。。 (HANA) 2014/09/19(金) 18:29 ---- GobGob様 HANA様、 有難うございます。 今、会社から帰ってきました。 会社にファイルがありますので 明日午後から出社したときに確認を致します。 (和代) 2014/09/19(金) 19:01 ---- HANA様 「INDIRECT関数を使う話なら [[20140820133226]] 『項目の配置が違うデータの抽出』(和代)」 --この時は、確か この関数を使うと重たくなるので使わず、別シートで名前が縦、日にちが横並び のデータを下記関数が入っているシートにコピー、貼り付け(行列を反対)で作成しうまくいきました。 HANA様が別シートは必要ないのではと言われ、その通りだと思い削除しました。 後に使用する担当者が、残業も入れてほしい(当初は残業する人は一人でまれな為にいらないと言って いました) と言われ項目を増やした為にやむをえず=(IFERROR(VLOOKUP('1日'!$S8&"_"&'1日'!$T8,マスターコード結合!$F$2:$G$66,2,FALSE),"")) &" "&('1日'!$S8&" — "&'1日'!$T8) の$S8&"_"&$T8の前後STをTUに 変更しました。それをコピー貼り付けするときにシート名だけが変化しませんでした。 GobGob様へ 「数式のシート名&セル参照してる所を例示したINDIRECT関数式に置き換える」--- 色々置き換えたのですが「引数が多すぎます」とメッセージが出てうまく行きません。 (あてすっぽうに入れた一例です):=INDIRECT("'"&REPLACE(CELL("1日",$T$7&"_"&'1日'!$U$7,マスターコード結合!$F$2:$G$66,2,FALSE),""),1,FIND("]",CELL("1日",$T$7&" — "&'1日'!$U$7)),"")&"'!T7") 私は応用が利きませんので、コピー元の関数を教えて下さい。お願い致します。 (和代) 2014/09/20(土) 16:45 ---- まずはヘルプをみてみたら? =INDIRECT("'"&REPLACE(CELL("filename",A1),1,FIND("]",CELL("filename",A1)),"")&"'!T7") 「T7」ってのを変更するだけ。 =(IFERROR(VLOOKUP(INDIRECT("'"&REPLACE(CELL("filename",A1),1,FIND("]",CELL("filename",A1)),"")&"'!T7") &"_"&INDIRECT("'"&REPLACE(CELL("filename",A1),1,FIND("]",CELL("filename",A1)),"")&"'!U7") ,マスターコード結合!$F$2:$G$66,2,FALSE),""))&" "&(INDIRECT("'"&REPLACE(CELL("filename",A1),1,FIND("]",CELL("filename",A1)),"")&"'!T7") &" — "&INDIRECT("'"&REPLACE(CELL("filename",A1),1,FIND("]",CELL("filename",A1)),"")&"'!U7") ) (GobGob) 2014/09/22(月) 08:00 ---- ↓ の最後のコメントだけ読むと、既に解決したようなことが書かれていますね。 [[20140820133226]] 『項目の配置が違うデータの抽出』 シートの状況等がよくわからないのですが、 やりたいことを簡単に言うと ↓ のようなことではないのでしょうか? =VLOOKUP('1日'!$C$1,F:G,2,FALSE) この数式のシート名(1日〜31日)を1個1個手直しせずに、 オートフィルすればシート名が変わる方法。 A1からA31に「1日」から「31日」までが入力されているとして B1 =IFERROR(VLOOKUP(INDIRECT("'"&A1&"'!C1"),F:G,2,FALSE),"") B31までコピーします。 それともINDIRECTは揮発性関数なので使いたくないということなのでしょうか? (ウルトラマリン) 2014/09/22(月) 13:58 ---- 今、何気なくこのサイトを見ました、お返事が入っているので驚きました。 有難うございます。 GobGob様 有難うございます。 下記の通り入力しましたが、「入力した数式は正しくありません」と出ました。 =(IFERROR(VLOOKUP(INDIRECT("'"&REPLACE(CELL("filename",A1),1,FIND("]",CELL("filename",A1)),"")&"'!T7")&"_"&INDIRECT("'"&REPLACE(CELL("filename",A1),1,FIND("]",CELL("filename",A1)),"")&"'!U7"),マスターコード結合!$F$2:$G$66,2,FALSE),""))&"&" — "&INDIRECT("'"&REPLACE(CELL("filename",A1),1,FIND("]",CELL("filename",A1)),"")&"'!U7") "&(INDIRECT("'"&REPLACE(CELL("filename",A1),1,FIND("]",CELL("filename",A1)),"")&"'!T7") どこが違っているでしょうか? ウルトラマリン様 有難うございました。 B1 =IFERROR(VLOOKUP(INDIRECT("'"&A1&"'!C1"),F:G,2,FALSE),"")←&"'!C1"とは何でしょうか? これがわかれば本来の下記の式に入れたいと思いますが、宜しくお願い致します。 *本来の式は、(B3から結果が入ります。)B3 =(IFERROR(VLOOKUP('1日'!$T$7&"_"&'1日'!$U$7,マスター コード結合!$F$2:$G$66,2,FALSE),""))&" "&('1日'!$T$7&" — "&'1日'!$U$7)の式です。 意味は、1日のT7(出勤時間)とU7(退勤時間)をシート名:マスターコード結合(コード番号と出勤退勤の時間を&でくくりコードの時間帯を縦列に並べています。) 一例、(31 B1 9 — 13)--T7が9時、U7が13時ならば、?@1 B1です。プラス "&('1日'!$T$7&" — "&'1日'!$U$7)---?A出勤時間と退勤時間が表示 B3の結果は?@+?Aで、 (31 B1 9 — 13)になります。 (和代) 2014/09/22(月) 17:47 ---- > B1 =IFERROR(VLOOKUP(INDIRECT("'"&A1&"'!C1"),F:G,2,FALSE),"")←&"'!C1"とは何でしょうか? 簡単な例として ↓ の式で説明しています。 =VLOOKUP('1日'!$C$1,F:G,2,FALSE) VLOOKUPの検索値が全てのシートでC1だとしたらということです。 ですので、それはC1セルのことです。 "'!C1" ← 「"」で囲っていますから、これは文字列。 右下どちらにコピーしても変化しませんので「$」を付ける必要はありません。 質問を読んで、疑問に思うところがありますので、それも書いておきます。 > A3からA33迄、1日から31日の日にちが並んでいます。 > そこで色々考えて、AV3〜AV33迄の場所に1日から31日表示しました。 A3:A33 と AV3:AV33 は何がどう違うのでしょうか? > B2からAS3迄、名前が表示されています。 2行目と3行目に名前が表示されているんですよね? なのにそのVLOOKUPの式を入れるセルもB3からなんですか? それとも名前が表示されているのは2行目だけの間違いなんでしょうか? > B3 =(IFERROR(VLOOKUP('1日'!$T$7&"_"&'1日'!$U$7,マスターコード結合!$F$2:$G$66,2,FALSE),""))&" "&('1日'!$T$7&" — "&'1日'!$U$7) この式をB3から右方向にもコピーするんですよね? これでしたら、右にどこまでコピーしても全部同じ結果になると思うんですが、そんなことありませんか? A3:A33に「1日」から「31日」が入力されているとして 元が下の式だとすれば =VLOOKUP('1日'!$T$7&"_"&'1日'!$U$7,マスターコード結合!$F$2:$G$66,2,FALSE) ↓ =VLOOKUP(INDIRECT("'"&A3&"'!T7")&"_"&INDIRECT("'"&A3&"'!U7"),マスターコード結合!$F$2:$G$66,2,FALSE) 右方向にもコピーする場合は A3 → $A3 に(ただし右方向の結果は全て同じ) > T7が9時、U7が13時ならば、?@1 B1です。 > ---?A出勤時間と退勤時間が表示 B3の結果は?@+?Aで 文字化けでしょうか、何が書いてあるのかよくわかりません。 (ウルトラマリン) 2014/09/23(火) 13:15 ---- ウルトラマリン様 今晩は、お世話になります。 「そこで色々考えて、AV3〜AV33迄の場所に1日から31日表示しました。」ーー何故このように 書いたのかわかりません。日付は、A3:A33 が正しいです。迷わせてすみませんでした。 「B2からAS3迄、名前が表示されています。」--AS2迄です。 「それとも名前が表示されているのは2行目だけの間違いなんでしょうか?」その通りです、 これも何でAS3としたのかわかりません。すみませんでした。 「この式をB3から右方向にもコピーするんですよね?、 これでしたら、右にどこまでコピーしても全部同じ結果になると思うんですが、そんなことありません?」 -その通りです、それで同じ結果になるので手で変更します。例えばTU列を7から8、910、と 右に最後の名前の人迄数値を変更していきます。そして横列の名前をコピーして、B3からB33迄に 貼り付をしたのです。 「 T7が9時、U7が13時ならば、?@1 B1です。 ---?A出勤時間と退勤時間が表示 B3の結果は?@+?Aで 文字化けでしょうか、何が書いてあるのかよくわかりません。」 --文字化けです。下記のことを書きたかったのです。 T7が9時、U7が13時ならば、シート名:マスターコード結合より、参照範囲!$F$2:$G$66,2の中に 9-13があればG列、コードの31 B1を表示します。そして"&('1日'!$T$7&" — "&'1日'!$U$7)の式に より出勤と退勤の時間を表示させ、B3の関数の結果は31 B1 9-13となります。この結果を コピー、貼り付けをしたかったのです。 A3:A33に「1日」から「31日」が入力されているとして 元が下の式だとすれば ?@=VLOOKUP('1日'!$T$7&"_"&'1日'!$U$7,マスターコード結合!$F$2:$G$66,2,FALSE) ↓ ?A =VLOOKUP(INDIRECT("'"&A3&"'!T7")&"_"&INDIRECT("'"&A3&"'!U7"),マスターコード結合! $F$2:$G$66,2,FALSE) ?AをB3に入力すれば #N/Aになります。 (和代) 2014/09/23(火) 20:05 ---- 本題とは関係ありませんが、丸数字は文字化けするので (1) (2) 等にしてください。 (Mook) 2014/09/23(火) 20:14 ---- > B3に入力すれば #N/Aになります。 B3に ↓ の式を入れたらどうなりますか? =VLOOKUP('1日'!$T$7&"_"&'1日'!$U$7,マスターコード結合!$F$2:$G$66,2,FALSE) この式だったらエラーにならず正しい値が返るのに、 INDIRECTを使った方の式はエラーになるということでしょうか? こちらで試してみましたが、上の式が正しい値を返しているのであればエラーにはなりません。 #REF! ではなく #N/A なんですよね? もう一度よく確認してみてください。 それが解決してから ↓ に進んでください。 > それで同じ結果になるので手で変更します。例えばTU列を7から8、910、と B列はT7セルが検索値で、右方向にコピーしたらT8、T9、T10……になればいいんでしょうか? INDIRECT("'"&A3&"'!T7") ↓ INDIRECT("'"&$A3&"'!T"&COLUMN(G3)) 上のように変更すればいちいち手で変更しなくても、オートフィルでコピーするだけで T7、T8、T9、T10……と変化します。 COLUMN(G3) はG列の列番号を返しますから「7」のことです。 最終的には B3 =IFERROR(VLOOKUP(INDIRECT("'"&$A3&"'!T"&COLUMN(G3))&"_"&INDIRECT("'"&$A3&"'!U"&COLUMN(G3)),マスターコード結合!$F$2:$G$66,2,FALSE)&" "&INDIRECT("'"&$A3&"'!T"&COLUMN(G3))&" — "&INDIRECT("'"&$A3&"'!U"&COLUMN(G3)),"") この式を下に33行目までオートフィルし、そのまま右方向にオートフィルします。 この式を入れたがために動きが重くなるかどうかは、そちらの環境で確認してみてください。 > そして横列の名前をコピーして、B3からB33迄に貼り付をしたのです。 おっしゃっている意味がわかりませんでしたので、これについては何も考えていません。 (ウルトラマリン) 2014/09/24(水) 03:23 ---- ウルトラマリン様 今から外出します。 今晩、おそがけですが見ますので 申し訳ございません。 (和代) 2014/09/24(水) 08:29 ---- > B3に入力すれば #N/Aになります。 [B3に ↓ の式を入れたらどうなりますか? =VLOOKUP('1日'!$T$7&"_"&'1日'!$U$7,マスターコード結合!$F$2:$G$66,2,FALSE) この式だったらエラーにならず正しい値が返るのに、 INDIRECTを使った方の式はエラーになるということでしょうか? こちらで試してみましたが、上の式が正しい値を返しているのであればエラーにはなりません。 #REF! ではなく #N/A なんですよね? もう一度よく確認してみてください。] 私は、> B3に入力すれば #N/Aになります。と#REFではなく#N/Aと書いていますが--- 最終的には B3 =IFERROR(VLOOKUP(INDIRECT("'"&$A3&"'!T"&COLUMN(G3))&"_"&INDIRECT("'"&$A3&"'!U"&COLUMN(G3)),マスターコード結合!$F$2:$G$66,2,FALSE)&" "&INDIRECT("'"&$A3&"'!T"&COLUMN(G3))&" — "&INDIRECT("'"&$A3&"'!U"&COLUMN(G3)),"")でうまくいきました、これでほっとしました。あとは今後利用できますように覚えていきます。 有難うございます。 (和代) 2014/09/24(水) 20:53 ...
https://www.excel.studio-kazu.jp/wiki/kazuwiki/201409/20140919155335.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97054 documents and 608269 words.

訪問者:カウンタValid HTML 4.01 Transitional