
A 回答 (6件)
- 最新から表示
- 回答順に表示
No.6
- 回答日時:
今さらですが、「1日4日」→「1日・4日」に変換する数式です。
【G9セル】=SUBSTITUTE(TRIM(SUBSTITUTE(G3,"日","日 "))," ","・")
No.5
- 回答日時:
こんにちは!
一気に表示する方法にしてみました。
VBAになりますが一例です。
↓の画像のように元データはSheet1にあり、Sheet2に表示するとします。
尚、Sheet1のA列はシリアル値ではなく、文字列だという前提です。
標準モジュールにしてください。
Sub Sample1() 'この行から//
Dim i As Long, k As Long, lastRow As Long
Dim myStr As String, c As Range, wS As Worksheet
Set wS = Worksheets("Sheet2")
lastRow = wS.Cells(Rows.Count, "A").End(xlUp).Row
If lastRow > 1 Then
Range(wS.Cells(2, "B"), wS.Cells(lastRow, "B")).ClearContents
End If
With Worksheets("Sheet1")
For i = 2 To wS.Cells(Rows.Count, "A").End(xlUp).Row
Set c = .Rows(2).Find(what:=wS.Cells(i, "A"), LookIn:=xlValues, lookat:=xlWhole)
For k = 3 To .Cells(Rows.Count, "A").End(xlUp).Row
If .Cells(k, c.Column) = "休み" Then
myStr = myStr & .Cells(k, "A") & "・"
End If
Next k
If myStr <> "" Then
wS.Cells(i, "B") = Left(myStr, Len(myStr) - 1)
End If
myStr = ""
Next i
wS.Columns.AutoFit
End With
End Sub 'この行まで//
※ 関数でないのでデータ変更があるたびにマクロを実行する必要があります。m(_ _)m


No.4
- 回答日時:
G4: =IFERROR(SMALL(IF(OFFSET($A$1,2,MATCH($F4,$2:$2,0)-1,31,)="休",ROW(A$1:A$31),""),COLUMN(A1)),"")
【お断り】上式は必ず配列数式として入力のこと

No.3
- 回答日時:
No.2 の追補
・「115」ではなく「114」ですね。(頭の「・」の分を引かないといけませんでした。まぁ「114」以上なら何でもいいんですけどね)
・ MID関数は、頭についてしまう「・」を消すために使っています。
No.2
- 回答日時:
こんなのはいかがですか?
① K3セルに「=IF(B3="休み","・" & $A3,"")」を入力
② それをL3セルとM3セルにコピーする。
④ K4セルに「=IF(B4="休み",K3 & "・" & $A4,K3)」を入力
⑤ それをL4セルからM33セルまでにコピーする。
⑥ K列からM列を非表示にする。
⑦ G4セルに「=MID(K33,2,115)」を入力
⑧ G5セルに「=MID(L33,2,115)」を入力
⑨ G6セルに「=MID(M33,2,115)」を入力
※ ちなみに⑦~⑨の「115」は全部休みになった場合の文字数です。
No.1
- 回答日時:
補足の方なら、②のIF関数のところで、単に日にちを表示させるのではなく、
該当する場合で更にそれが1回目の休みであれば日付を表示、2回目以降であれば・と日付を上のセルに追加する。
該当しない場合は上のセルをそのまま表示する。とすれば、月末の表示がそのまま求めるものになります。
(1日のみ上のセルが埋まっているので、今のままにします)
最初にあるAさんの例では、
1=該当しないので空白
2~3=該当しないので上のセルと同じ=空白
4=該当して更に1回目なので4日と表示
5=該当しないのでそのまま4日と表示
6=該当して2回目以降なので・6日を追加し、4日・6日と表示
7~12=該当しないのでそのまま4日・6日と表示
13=該当して2回目以降なので・13日を追加し、4日・6日・13日と表示
14~20=該当しないのでそのまま4日・6日・13日と表示
21=該当して2回目以降なので・21日を追加し、4日・6日・13日・21日と表示
22~31?=該当しないのでそのまま4日・6日・13日・21日と表示
といった具合になりますね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VLOOKUP FALSEのこと
-
【関数】【マクロ】売上X円以上...
-
【マクロ 画像あり】Exact関数...
-
空白処理を空白に
-
同じ名前(重複)かつ 日本 ア...
-
エクセルでフィルターした値を...
-
エクセルシートの見出しの文字...
-
空白のはずがSUBTOTAL関数でカ...
-
excel
-
if関数の複数条件について
-
【マクロ】数式を入力したい。...
-
Excelで4択問題を作成したい
-
Excel 複数のセルが一致すると...
-
Excel 日付の表示が直せません...
-
表計算ソフトでの様式の呼称
-
【マクロ】既存ファイルの名前...
-
【マクロ】エラー【#DIV/0!】が...
-
【マクロ】実行時エラー '424':...
-
エクセルの文字数列関数と競馬...
-
エクセルに写真が貼れない(フ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルでフィルターした値を...
-
if関数の複数条件について
-
エクセルシートの見出しの文字...
-
excel
-
エクセルの文字数列関数と競馬...
-
VLOOKUP FALSEのこと
-
同じ名前(重複)かつ 日本 ア...
-
表計算ソフトでの様式の呼称
-
エクセルに写真が貼れない(フ...
-
【マクロ】数式を入力したい。...
-
【マクロ】実行時エラー '424':...
-
【画像あり】オートフィルター...
-
Office2021のエクセルで米国株...
-
【画像あり】【関数】指定した...
-
エクセルのVBAで集計をしたい
-
【マクロ】【画像あり】4つの...
-
【関数】3つのセルの中で最新...
-
【マクロ】excelファイルを開く...
-
LibreOffice Clalc(またはエク...
-
エクセルのライセンスが分かり...
おすすめ情報
IF関数で「休み」を日にちで出し、TEXT関数で羅列させることはできました(①~③)。
④の、区切りを入れる方法が分かる方お願いします!