对象'_Worksheet'的方法'Range'失败|Excel|VBA|

用户11561678

错误:对象'_Worksheet'的方法'Range'失败

Dim Ws As Worksheet
For Each Ws In Sheets(Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"))

    Ws.Range("I9:AM68" & Rows.Count).Replace What:="AP", Replacement:="", LookAt:=xlWhole
    Ws.Range("I9:AM68" & Rows.Count).Replace What:="BL", Replacement:="", LookAt:=xlWhole
    Ws.Range("I9:AM68" & Rows.Count).Replace What:="MA", Replacement:="", LookAt:=xlWhole
    Ws.Range("I9:AM68" & Rows.Count).Replace What:="PA", Replacement:="", LookAt:=xlWhole
    Ws.Range("I9:AM68" & Rows.Count).Replace What:="PL", Replacement:="", LookAt:=xlWhole
    Ws.Range("I9:AM68" & Rows.Count).Replace What:="SL", Replacement:="", LookAt:=xlWhole
    Ws.Range("I9:AM68" & Rows.Count).Replace What:="UP", Replacement:="", LookAt:=xlWhole

    Ws.Range("I9:AM68" & Rows.Count).Replace What:="H1", Replacement:="", LookAt:=xlWhole
    Ws.Range("I9:AM68" & Rows.Count).Replace What:="H2", Replacement:="", LookAt:=xlWhole
    Ws.Range("I9:AM68" & Rows.Count).Replace What:="TR", Replacement:="", LookAt:=xlWhole
    Ws.Range("I9:AM68" & Rows.Count).Replace What:="WH", Replacement:="", LookAt:=xlWhole
    Ws.Range("I9:AM68" & Rows.Count).Replace What:="NJ", Replacement:="", LookAt:=xlWhole
    Ws.Range("I9:AM68" & Rows.Count).Replace What:="AL", Replacement:="", LookAt:=xlWhole
    Ws.Range("I9:AM68" & Rows.Count).Replace What:="SUP", Replacement:="", LookAt:=xlWhole

Next Ws

如果在每个工作表中找到匹配,则数据已清除 => 在范围内设置条件格式 => I 到 AM

这是我尝试不工作的另一个代码

Dim Ws As Worksheet, lr As Long, c As Range
For Each Ws In Sheets(Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"))
    lr = Ws.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row
    For Each c In Ws.Range("I9:AM68" & lr)
        Select Case UCase(c.Value)
            Case "SUP", "AP", "AL"
                c.Value = ""
                c.Interior.ColorIndex = xlNone
        End Select
    Next
Next Ws

这是我的 Excel 的图像

[我的图片][1]:https : //i.stack.imgur.com/yDLj4.png

这对我来说效果很好但是没有将单元格颜色设置为正常的单元格颜色,例如没有填充颜色

'what:=UCase("SUP"), Replacement:="", ReplaceFormat:=True

Dim Ws As Worksheet
For Each Ws In Sheets(Array("Sheet1", "Sheet2", "Sheet3"))

Ws.Range("A4:K" & Rows.Count).Replace what:=UCase("SUP"), Replacement:="", ReplaceFormat:=True
Ws.Range("A4:K" & Rows.Count).Replace what:=UCase("SUP"), Replacement:="", ReplaceFormat:=False

Ws.Range("A4:K" & Rows.Count).Replace what:=UCase("AP"), Replacement:="", ReplaceFormat:=True
Ws.Range("A4:K" & Rows.Count).Replace what:=UCase("AP"), Replacement:="", ReplaceFormat:=False

Ws.Range("A4:K" & Rows.Count).Replace what:=UCase("AL"), Replacement:="", ReplaceFormat:=True
Ws.Range("A4:K" & Rows.Count).Replace what:=UCase("AL"), Replacement:="", ReplaceFormat:=False

Next Ws

这是上面代码的输出 [output][1]: https://i.stack.imgur.com/H09ab.png

晶圆厂

假设您正在尝试获取该范围内的最后一行,而不是实际的rows.count,请参阅下面的一种实现这些替换的方法。

Option Explicit
Sub doSomeReplacements()

    Application.ScreenUpdating = False

    Dim wb As Workbook: Set wb = ThisWorkbook   'set your workbook variable
    Dim Ws As Worksheet
    Dim shNames() As String: shNames = Split("Sheet1,Sheet2,Sheet3", ",") 'allocate sheet names to an array
    Dim strReplaces() As String: strReplaces = Split("AP,BL,MA,PA,PL,SL,UP,H1,H2,TR,WH,NJ,AL,SUP", ",") 'allocate replacement strings to an array
    Dim lastRow As Long, X As Long, Z As Long, R As Long, C As Long

    For X = LBound(shNames) To UBound(shNames)  'Loop through the array of sheet names
        On Error Resume Next
        Set Ws = wb.Sheets(shNames(X))
        On Error GoTo 0

        If Not Ws Is Nothing Then   'If there is a worksheet to work with....
            With Ws
                'lastRow = .Cells(.Rows.Count, "I").End(xlUp).Row   'get last row at column "I"
                lastRow = .Cells.SpecialCells(xlCellTypeLastCell).Row 'alternative last row

                For R = 1 To lastRow
                    For C = 1 To 11 '"A:K"
                        For Z = LBound(strReplaces) To UBound(strReplaces) 'Loop through the array of replacements and apply the replacement
                            With .Cells(R, C)
                                If .Value = strReplaces(Z) Then
                                    .Value = ""
                                    .Interior.ColorIndex = xlNone
                                End If
                            End With
                        Next Z
                    Next C
                Next R
            End With
        End If
        Set Ws = Nothing
    Next X

    Application.ScreenUpdating = True
End Sub

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

对象'_Worksheet'的方法'Range'失败

来自分类Dev

Excel VBA“对象_worksheet的方法范围失败

来自分类Dev

excel VBA对象_worksheet的方法范围失败

来自分类Dev

Excel VBA“对象_worksheet的方法范围失败

来自分类Dev

1004对象'_Worksheet'的方法'Range'失败

来自分类Dev

对象'_Worksheet'的方法'Range'失败的原因?1

来自分类Dev

Excel VBA 中对象“_Worksheet”的方法“范围”失败?

来自分类Dev

VBA:获取运行时1004:使用单元格时对象“ _Worksheet”的方法“ Range”失败

来自分类Dev

Excel宏:对象_worksheet的方法范围失败

来自分类Dev

Excel宏:对象_worksheet的方法范围失败

来自分类Dev

Excel 宏 - 对象“_Worksheet”的方法“范围”失败

来自分类Dev

对象“ _Worksheet”的方法“复制”失败

来自分类Dev

表错误1004“对象'_Worksheet'的方法'范围'的Excel VBA排序失败

来自分类Dev

对象“ _Worksheet”的方法“可见”失败

来自分类Dev

Excel VBA错误:选择变量值的范围时,对象“ _Worksheet”的1004方法“范围”失败

来自分类Dev

VBA:获取运行时1004:对象“ _Worksheet”的方法“范围”失败

来自分类Dev

VBA:运行时错误“1004”:对象“_Worksheet”的方法“数据透视表”失败

来自分类Dev

可变范围并不断获取“对象_worksheet的方法范围失败”

来自分类Dev

查找范围时对象“_worksheet”的方法“范围”失败

来自分类Dev

Excel VBA shoDataForm运行时错误'1004'Worksheet类的ShowDataForm方法失败

来自分类Dev

Excel VBA .AddChart方法'对象'_chart'的'SetSource数据'失败

来自分类Dev

Excel VBA“对象'IWebBrowser2'的方法'文档'失败”

来自分类Dev

错误消息“对象'_Worksheet'的方法'范围'”

来自分类Dev

方法“对象_Worksheet的范围,错误:1004”

来自分类Dev

复制单元格值时,对象_Worksheet的方法范围失败

来自分类Dev

“对象范围” _Worksheet失败-用户表单

来自分类Dev

VBA方法“对象范围” _Worksheet在运行代码时突然出现故障?

来自分类Dev

#VBA-私人子Worksheet_Change错误:对象“范围”字段的方法“隐藏”

来自分类Dev

Excel VBA运行时错误:对象“内部”的方法“颜色”失败

Related 相关文章

  1. 1

    对象'_Worksheet'的方法'Range'失败

  2. 2

    Excel VBA“对象_worksheet的方法范围失败

  3. 3

    excel VBA对象_worksheet的方法范围失败

  4. 4

    Excel VBA“对象_worksheet的方法范围失败

  5. 5

    1004对象'_Worksheet'的方法'Range'失败

  6. 6

    对象'_Worksheet'的方法'Range'失败的原因?1

  7. 7

    Excel VBA 中对象“_Worksheet”的方法“范围”失败?

  8. 8

    VBA:获取运行时1004:使用单元格时对象“ _Worksheet”的方法“ Range”失败

  9. 9

    Excel宏:对象_worksheet的方法范围失败

  10. 10

    Excel宏:对象_worksheet的方法范围失败

  11. 11

    Excel 宏 - 对象“_Worksheet”的方法“范围”失败

  12. 12

    对象“ _Worksheet”的方法“复制”失败

  13. 13

    表错误1004“对象'_Worksheet'的方法'范围'的Excel VBA排序失败

  14. 14

    对象“ _Worksheet”的方法“可见”失败

  15. 15

    Excel VBA错误:选择变量值的范围时,对象“ _Worksheet”的1004方法“范围”失败

  16. 16

    VBA:获取运行时1004:对象“ _Worksheet”的方法“范围”失败

  17. 17

    VBA:运行时错误“1004”:对象“_Worksheet”的方法“数据透视表”失败

  18. 18

    可变范围并不断获取“对象_worksheet的方法范围失败”

  19. 19

    查找范围时对象“_worksheet”的方法“范围”失败

  20. 20

    Excel VBA shoDataForm运行时错误'1004'Worksheet类的ShowDataForm方法失败

  21. 21

    Excel VBA .AddChart方法'对象'_chart'的'SetSource数据'失败

  22. 22

    Excel VBA“对象'IWebBrowser2'的方法'文档'失败”

  23. 23

    错误消息“对象'_Worksheet'的方法'范围'”

  24. 24

    方法“对象_Worksheet的范围,错误:1004”

  25. 25

    复制单元格值时,对象_Worksheet的方法范围失败

  26. 26

    “对象范围” _Worksheet失败-用户表单

  27. 27

    VBA方法“对象范围” _Worksheet在运行代码时突然出现故障?

  28. 28

    #VBA-私人子Worksheet_Change错误:对象“范围”字段的方法“隐藏”

  29. 29

    Excel VBA运行时错误:对象“内部”的方法“颜色”失败

热门标签

归档