假設我有兩個合併的單元格,比如說Sheet1!$A$1:$B$1
。如何使用VBA更新合併單元格中的文本?
而且可以說有一段文字居中在兩個單元格中間。如何以編程方式使用VBA更新該值?我有一個帶按鈕的簡單用戶表單,點擊按鈕後,我想要更新單元格。
我試過抓住範圍,但似乎沒有工作。
假設我有兩個合併的單元格,比如說Sheet1!$A$1:$B$1
。如何使用VBA更新合併單元格中的文本?
而且可以說有一段文字居中在兩個單元格中間。如何以編程方式使用VBA更新該值?我有一個帶按鈕的簡單用戶表單,點擊按鈕後,我想要更新單元格。
我試過抓住範圍,但似乎沒有工作。
如果已合併單元格,則只能通過引用最左上角的單元格來編輯合併單元格的值。
所以,如果A1和B1被合併,更改日期的唯一途徑是:
Range("A1").value = "data"
或者
Cells(1,1).Value = "data"
調用Range("B1").Value = "data"
不會改變的可見文本。
您可以設置第一個單元格的值並更新文本。
Worksheets("Sheet1").Cells(1,1).Value = "New Value"
除了其他的答案,這是值得注意的是,你還可以使用MergeArea
通過兩種細胞的更新:
Range("A1").MergeArea.Value="New value"
Range("B1").MergeArea.Value="New value"
如果小區不合並,然後它會忽略的MergeArea( 。即它把它像一個單元合併區域...)
使用此功能,如果你需要引用可能會或可能不會是一個合併範圍部分的細胞:
Function Reference_cell_even_if_merged(Cell_Range As Range) As Range
If Cell_Range.MergeCells Then
Set Reference_cell_even_if_merged = Cell_Range.MergeArea
Else
Set Reference_cell_even_if_merged = Cell_Range
End If
End Function
+1樂有什麼新的 –
謝謝,這對我很好! –
親愛的@Tim,這讓我無法拍攝使用合併單元格的傢伙 –