EXCEL объединяет весь текст в ячейках между двумя границами - PullRequest
0 голосов
/ 04 марта 2020

В моей электронной таблице MS Excel граница используется для определения конца некоторых связанных данных. Я хочу преобразовать содержимое этих связанных ячеек в одну ячейку. Я хочу сделать это путем объединения текстов внутри ячеек столбца до границы и начала со следующей ячейки и продолжения объединения до следующей границы и так далее. , , , Есть ли хитрость для этого? enter image description here

Заранее спасибо

1 Ответ

2 голосов
/ 04 марта 2020

Есть множество вещей, которые вы можете сделать с этим, но я думаю, что вы можете освоить это. Он жестко запрограммирован для сканирования первого столбца и вывода во второй - вы можете явно его параметризировать.

Sub concat()

' loop on first column but this could be an input
Dim max_rows As Integer
Dim start_col As Integer ' The column where your data is
start_col = 1
max_rows = ActiveSheet.UsedRange.Rows.Count ' count how many times to loop
Dim counter As Integer
counter = 1 ' this is for the output to know when we wrote out something we increment to next cell
Dim temp_string As String
temp_string = ""  ' variable to store until write out
For i = 1 To max_rows:
    Cells(i, 1).Select
    temp_string = temp_string + " " + ActiveCell.Value
    If Selection.Borders(xlEdgeBottom).LineStyle = 1 Then
        out = temp_string
        Cells(counter, 2) = out
        counter = counter + 1
        temp_string = ""
End If
Next i
End Sub
...