3
我寫了一個粗略的函數來根據範圍選擇和連接單元格。Excel VBA合併單元格功能
Function GetSkills(CellRef As String, CellRefEnd As String, Delimiter As String)
Dim CellStart As Range
Dim CellEnd As Range
Dim LoopVar As Long
Dim StartRow As Long
Dim EndRow As Long
Dim Concat As String
Dim Col As Long
Set CellStart = Worksheets(1).Cells.Range("B" & CellRef)
Set CellEnd = Worksheets(1).Cells.Range("B" & CellRefEnd)
Col = CellStart.Column
StartRow = CellStart.Row
EndRow = CellEnd.Row
With Range(CellStart, CellEnd)
.Merge
.WrapText = True
End With
Concat = ""
For LoopVar = StartRow To EndRow
Concat = Concat & Cells(LoopVar, Col).Value
If LoopVar <> EndRow Then Concat = Concat & Delimiter & " "
Next LoopVar
GetSkills = Concat
End Function
在這我想合併的單元格,當我運行的功能,我得到一個提示說:
選擇包含多個數據值。合併成單元格 將保留最左上角的數據只有
我單擊確定,Excel崩潰,重新啓動並再次提示對話框。是否有另一種方法來使用VBA合併一個單元塊?
爲什麼在完成並置之前合併要連接的單元格? –
我將一堆行連接到一個單元格中,文本很長並且不可見,所以我試圖在連接字符串正在寫入的列上合併相同數量的行,因此其完全可見 – keeg
而不是合併,行,你不能只是調整行的大小?也許我不明白你的目標是在這裏。 – Marc