EXCEL VBA コレクション Itemのすべての文字を結合する。
コレクションの中に入れた文字列をすべて結合して出したいときはありませんか?
例えば、
コレクションに
Item(1)わたしは
Item(2)ユニバに
Item(3)いきたいです。
という内容を入れていた場合に
テキストで
わたしは
ユニバに
いきたいです。
という感じです。
FORで回すと、改行が残り結構煩雑なんですよね(笑)
というわけで関数、「nistrコレクションが文字列の場合結合する」を作ってみました。
Public Sub test() Dim cll As New Collection cll.Add "わたしは" cll.Add "ユニバに" cll.Add "行きたいです" Debug.Print nistrコレクションが文字列の場合結合する(cll, vbCr) End Sub ' ' コレクションが文字列の場合結合する。 'https://pgbigoroku.hatenablog.com/entry/2022/08/25/094908 '2021/8/21 Public Function nistrコレクションが文字列の場合結合する(ByRef pcll As Collection, ByVal pstrDivide As String) As String Dim strRet As String Dim varFor As Variant On Error GoTo Errnisubコレクションが文字列の場合結合する For Each varFor In pcll strRet = strRet & pstrDivide & varFor Next nistrコレクションが文字列の場合結合する = Mid(strRet, Len(pstrDivide) + 1) Exit Function Errnisubコレクションが文字列の場合結合する: nistrコレクションが文字列の場合結合する = "" Exit Function Resume Next End Function