|
Sub Test()
Dim C As Range
Dim St As String
With Sheets("アイテム")
'アイテム・シートについて以下に記す
If WorksheetFunction _
.CountA(.Range("AB:AB")) = 0 Then Exit Sub
'AB列に値が入力されていなければ、マクロは中止
'これを判定しておかないと、次の SpecialCells がエラーになる
For Each C In .Range("AB:AB").SpecialCells(2)
'AB列で値が入力されているセルをループ
St = St & C.Value & "+"
'文字列型変数に値を取り込み、"+" を追加
Next
'次のセルへ
End With
St = Left$(St, Len(St) - 1)
'全ての値を連結したあと、一番最後の文字が"+"になっているので
'その一文字のみを除く
Sheets("集計").Range("F4").Value = St
'集計シートの F4 に変数の値を入力
End Sub
というコードです。St = St & C.Value & "+" という文字列の連結は、
ごく一般的なやり方です。むしろ配列を作ってJoin関数で繋げる方が、
特殊なやり方と言えるかも知れません。
|
|