- ベストアンサー
エクセル 出席日の表示の仕方
エクセルで出席日を表示する。 (1)A1からO1 1~15の数字 (2)A2からO2 A2出席 A4出席 A10出席 A13出席 A15出席 (3)A3からO3 B3出席 B4出席 B10出席 B15出席 (2)と(3)のどちらか出席でOKとして Q3に 1・2・4・6・10・13・15または1,2,4,6,10,15 のように表示したいのですが エクセルでどういう計算式を使って表示するのでしょうか? もちろん(2)(3)の出席を変えるとQ3の表示も変わるようにする。
- みんなの回答 (8)
- 専門家の回答
質問者が選んだベストアンサー
失敬。2または3どちらかで出席が付くんですね。 次のいずれかの方法で出来ます。 方法1: Q2に =SUBSTITUTE(TRIM(CONCATENATE(IF(A2&A3="","",A$1)," ",IF(B2&B3="","",B$1)," ",IF(C2&C3="","",C$1)," ",IF(D2&D3="","",D$1)," ",IF(E2&E3="","",E$1)," ",IF(F2&F3="","",F$1)," ",IF(G2&G3="","",G$1)," ",IF(H2&H3="","",H$1)," ",IF(I2&I3="","",I$1)," ",IF(J2&J3="","",J$1)," ",IF(K2&K3="","",K$1)," ",IF(L2&L3="","",L$1)," ",IF(M2&M3="","",M$1)," ",IF(N2&N3="","",N$1)," ",IF(O2&O3="","",O$1)))," ",",") と記入。 方法2: シート2のA2に =IF(Sheet1!A2&Sheet1!A3="","",Sheet1!A$1)&" "&B2 と記入,コピーしてO2まで貼り付け シート1のQ2に =SUBSTITUTE(TRIM(Sheet2!A2)," ",",") と記入。 #説明を書き足しても尚、間違いに気づかないって? ご相談を書いたり、教わった回答を確認したり返事をするときは、必ずまず「ご自分のエクセルを開いてちゃんと手を動かして試してから」にするようにしてみてください。
その他の回答 (7)
- 某HN クロメート(Chromate)(@CoalTar)
- ベストアンサー率40% (705/1742)
>エクセルで出席日を表示する。 > (1)A1からO1 1~15の数字 >1の行に1~15が入るのは合っています。 1行目の入力は間違いない > (2)A2からO2 A2出席 A4出席 A10出席 A13出席 A15出席 一つのセルに「出席」のみは入り、「A2出席」ではない > (3)A3からO3 B3出席 B4出席 B10出席 B15出席 (2)と異なる列(行?)に入力される >(2)と(3)のどちらか出席でOKとして > Q3に 1・2・4・6・10・13・15または1,2,4,6,10,15 > のように表示したいのですが と >この表のP16のような形(2,3,4,10,13,15) > で表示されるような計算式を > Q3のセルにいれたいのです。 から「1・2・4・6・10・13・15または1,2,4,6,10,15」 ではなく「1・2・4・6・10・13・15」または「1,2,4,6,10,15」 が求めたい結果である > エクセルでどういう計算式を使って表示するのでしょうか? 「1・2・4・6・10・13・15」 「1,2,4,6,10,15」 で13が入っていたり、いなかったりと求める数値が異なる さらに、求め方の説明がない。←重要 >もちろん(2)(3)の出席を変えるとQ3の表示も変わるようにする。 は、数式で対応可能と思われるが、1箇所だけで良いのか不明である >2の列、3の列に出席が入ります。 2の列=B列、3の列=C列 と判断したが、説明がほしい。 > この表だとA2出席A4出席A10出席A13出席A15出席 > B3出席B4出席B10出席B15出席 添付図で間違いはなさそうに見えるが、 解決していないことや >1の行に1~15が入るのは合っています。 ということから、違っているようだ。 >1行目が月半分の日にちで2行目が午前の出席、3行目が午後の出席で >午前か午後に出席すればOK(集計する) 一つのセルに >この表のP16のような形(2,3,4,10,13,15) のような結果表示は集計に向かないが良いのだろうか。 >この表のP16のような形(2,3,4,10,13,15) > で表示されるような計算式を ようなってことなので、結果が違うようだ。 行と列、セルの呼び方を注意しつつ補足説明をしてください。
- bunjii
- ベストアンサー率43% (3589/8249)
- keithin
- ベストアンサー率66% (5278/7941)
次のいずれかの方法で出来ます。 方法1: Q2に =SUBSTITUTE(TRIM(CONCATENATE(IF(A3="","",A$1)," ",IF(B3="","",B$1)," ",IF(C3="","",C$1)," ",IF(D3="","",D$1)," ",IF(E3="","",E$1)," ",IF(F3="","",F$1)," ",IF(G3="","",G$1)," ",IF(H3="","",H$1)," ",IF(I3="","",I$1)," ",IF(J3="","",J$1)," ",IF(K3="","",K$1)," ",IF(L3="","",L$1)," ",IF(M3="","",M$1)," ",IF(N3="","",N$1)," ",IF(O3="","",O$1)))," ",",") と記入,以下コピー 方法2: シート2のA2に =IF(Sheet1!A2="","",Sheet1!A$1)&" "&B2 と記入,コピーしてA2:O999まで貼り付け シート1のO2に =SUBSTITUTE(TRIM(Sheet2!A2)," ",",") と記入,下向けにコピー貼り付け #ご相談の例示がずいぶんと間違ってるので,回答する皆さん困ります。
- 某HN クロメート(Chromate)(@CoalTar)
- ベストアンサー率40% (705/1742)
- tom04
- ベストアンサー率49% (2537/5117)
こんにちは! 手っ取り早くVBAでやってみました。 画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面に ↓のコードをコピー&ペーストしてデータを入力してA2~O3セルにデータを入力してみてください。 Private Sub Worksheet_Change(ByVal Target As Range) 'この行から Dim j As Long, c As Range If Intersect(Target, Range("A2:O3")) Is Nothing Then Exit Sub With Range("Q3") .ClearContents For j = 1 To 15 Set c = Cells(2, j).Resize(2).Find(what:="出席", LookIn:=xlValues, lookat:=xlPart) If Not c Is Nothing Then If .Value = "" Then .Value = Cells(1, j) Else .Value = .Value & "・" & Cells(1, j) End If End If Next j End With End Sub 'この行まで ※ こんな感じではどうでしょうか?m(_ _)m
- aokii
- ベストアンサー率23% (5210/22062)
=IF(OR(A2="出席",A3="出席"),A1&",","")&IF(OR(B2="出席",B3="出席"),B1&",","")&IF(OR(C2="出席",C3="出席"),C1&",","")&IF(OR(D2="出席",D3="出席"),D1&",","")&IF(OR(E2="出席",E3="出席"),E1&",","")&IF(OR(F2="出席",F3="出席"),F1&",","")&IF(OR(G2="出席",G3="出席"),G1&",","")&IF(OR(H2="出席",H3="出席"),H1&",","")&IF(OR(I2="出席",I3="出席"),I1&",","")&IF(OR(J2="出席",J3="出席"),J1&",","")&IF(OR(K2="出席",K3="出席"),K1&",","")&IF(OR(L2="出席",L3="出席"),L1&",","")&IF(OR(M2="出席",M3="出席"),M1&",","")&IF(OR(N2="出席",N3="出席"),N1&",","")&IF(OR(O2="出席",O3="出席"),O1&",","")
- bi2ko
- ベストアンサー率40% (2/5)
> (2)A2からO2 A2出席 A4出席 A10出席 A13出席 A15出席 > (3)A3からO3 B3出席 B4出席 B10出席 B15出席 この2つの状況の意味が理解できません。 もしよろしければどんな表なのかキャプチャを載せていただけますでしょうか?
補足
1の行に1~15が入るのは合っています。 2の列、3の列に出席が入ります。 この表だとA2出席A4出席A10出席A13出席A15出席 B3出席B4出席B10出席B15出席 です。 1行目が月半分の日にちで2行目が午前の出席、3行目が午後の出席で 午前か午後に出席すればOK(集計する) この表のP16のような形(2,3,4,10,13,15) で表示されるような計算式を Q3のセルにいれたいのです。