![](/img/trans.png)
[英]How to hide / show rows across multiple worksheets based on a cell value on another worksheet
[英]How to Merge Cells Across Based on Cell's Value for Multiple Rows
每次我嘗試運行宏時,被LIRCounter包圍的第一部分都運行良好,但是Excel返回“運行時錯誤'1004':應用程序定義的錯誤或對象定義的錯誤”,並且Debug突出顯示了我的Range(。 ..)。合並我的宏其余部分的內容。
我嘗試通過刪除.Merge,Counter變量並重寫我的整個代碼來重新格式化范圍,但是我無法縮小導致錯誤的范圍的哪一部分。
Sub MergeCells()
Dim FirstRow As Long
Dim LastRow As Long
Dim TechnicalDataSheet As Worksheet
Dim LIRCounter As Long
Dim ETCounter As Long
Dim ETCounter2 As Long
FirstRow = 15
LastRow = 44
Set TechnicalDataSheet = Worksheets("Technical Data")
With TechnicalDataSheet
For LIRCounter = FirstRow To LastRow
If Cells(LIRCounter, 19).Value = Not IsEmpty(Cells(LIRCounter, 19)) Then
Else
Range("U" & LIRCounter, "Z" & LIRCounter).Merge
End If
If Cells(LIRCounter, 19).Value = Not IsEmpty(Cells(LIRCounter, 19)) Then
Else
Range("U" & LIRCounter, "Z" & LIRCounter) = "N/A"
End If
Next LIRCounter
For ETCounter = FirstRow To LastRow
If Cells(ETCounter, 3).Value = "Structural" Then
Range("D" & ETCounter, "L" & ETCounter).Merge
End If
If Cells(ETCounter, 3).Value = "Structural" Then
Range("D" & ETCounter, "L" & ETCounter) = "N/A - Structural"
End If
Next ETCounter
For ETCounter2 = FirstRow To LastRow
If Cells(ETCounter2, 3).Value = "Structural" Then
Range("O" & ETCounter2, "Z" & ETCounter2).Merge
End If
If Cells(ETCounter2, 3).Value = "Structural" Then
Range("O" & ETCounter2, "Z" & ETCounter2) = "N/A - Structural"
End If
Next ETCounter2
End With
End Sub
預期的結果是,如果從單元格C15的下拉菜單中選擇了“結構”,則單元格D15:L15合並為一個單元格,而單元格O15:Z15合並為一個單元格。 直到第44行的每一行都一樣。運行宏時,它僅返回“運行時錯誤'1004':應用程序定義的錯誤或對象定義的錯誤”,並且沒有單元格被合並。
您已經編寫了“ With TechnicalDataSheet”,但是下面的行是指單元格而不是.Cells,因此選擇活動工作表而不是所需的目標。 在所有“單元格”引用之前添加句號
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.