Skip to content

Instantly share code, notes, and snippets.

@udaken
Created November 29, 2017 00:23
Show Gist options
  • Save udaken/011a6fc3a7b9068271452be61a43cf5f to your computer and use it in GitHub Desktop.
Save udaken/011a6fc3a7b9068271452be61a43cf5f to your computer and use it in GitHub Desktop.
Option Explicit
Public Function TEXTJOIN(区切り記号 As String, 空の文字列を無視 As Boolean, ParamArray 文字列()) As String
Dim ret As String
Dim first As Boolean
first = True
Dim i As Long
Dim 文字列配列() As Variant
If (TypeName(文字列(LBound(文字列))) = "Range") Then
Dim r As Range
Set r = 文字列(LBound(文字列))
If (r.Columns.Count = 1) Then
ReDim 文字列配列(0 To r.Rows.Count - 1)
For i = 0 To r.Rows.Count - 1
文字列配列(i) = r(i + 1, 1)
Next
ElseIf (r.Rows.Count = 1) Then
ReDim 文字列配列(0 To r.Columns.Count - 1)
For i = 0 To r.Columns.Count - 1
文字列配列(i) = r(1, i + 1)
Next
Else
Error 1
End If
Else
文字列配列 = 文字列
End If
For i = LBound(文字列配列) To UBound(文字列配列)
If 空の文字列を無視 And (文字列配列(i) = "") Then
Else
If (Not first) Then
ret = ret & 区切り記号
End If
ret = ret & CStr(文字列配列(i))
first = False
End If
Next
TEXTJOIN = ret
End Function
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment