Доброе время суток. Задача в принципе тривиальна, необходимо добавить условие в функцию, чтобы он не собирал данные из пустых ячеек (и соответственно не ставил лишних разделителей), но мне не хватает знаний на данную махинацию. Прошу помочь, заранее спасибо.
[vba]
Код
'Склеивание текста из всех ячеек Rng с разделителем DELIM (автором кода является Николай Павлов) Public Function Exterminate(ByRef Rng As Excel.Range, Optional ByVal DELIM As String = ", ") As String Dim rCell As Range For Each rCell In Rng Exterminate = Exterminate & DELIM & rCell.Text Next rCell Exterminate = Mid(Exterminate, Len(DELIM) + 1) End Function
[/vba]
Доброе время суток. Задача в принципе тривиальна, необходимо добавить условие в функцию, чтобы он не собирал данные из пустых ячеек (и соответственно не ставил лишних разделителей), но мне не хватает знаний на данную махинацию. Прошу помочь, заранее спасибо.
[vba]
Код
'Склеивание текста из всех ячеек Rng с разделителем DELIM (автором кода является Николай Павлов) Public Function Exterminate(ByRef Rng As Excel.Range, Optional ByVal DELIM As String = ", ") As String Dim rCell As Range For Each rCell In Rng Exterminate = Exterminate & DELIM & rCell.Text Next rCell Exterminate = Mid(Exterminate, Len(DELIM) + 1) End Function
Public Function Exterminate(ByRef Rng As Excel.Range, Optional ByVal DELIM As String = ", ") As String Dim rCell As Range For Each rCell In Rng If rCell <> "" Then Exterminate = Exterminate & DELIM & rCell.Text Next rCell Exterminate = Mid(Exterminate, Len(DELIM) + 1) End Function
[/vba]
Так нужно? [vba]
Код
Public Function Exterminate(ByRef Rng As Excel.Range, Optional ByVal DELIM As String = ", ") As String Dim rCell As Range For Each rCell In Rng If rCell <> "" Then Exterminate = Exterminate & DELIM & rCell.Text Next rCell Exterminate = Mid(Exterminate, Len(DELIM) + 1) End Function