首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VBA子脚本超出范围-错误9故障

VBA子脚本超出范围-错误9故障
EN

Stack Overflow用户
提问于 2020-09-08 06:39:38
回答 1查看 71关注 0票数 1

有人能帮我做这段代码吗,我得到了一个下标的范围错误:

代码语言:javascript
复制
Dim ultimafilaauxiliarZB1 As Long
Dim ultimafilaauxiliarZB2 As Long
Dim ultimafilaauxiliarZN1 As Long
Dim ultimafilaauxiliarZN2 As Long

Dim cont As Integer

     If (Range("D23").Value > 49) Then

        ultimafilaauxiliarZB1 = Sheets("Hoja1").Range("L" & Rows.Count).End(xlUp).Row   ## HERE ERROR ##
        Sheets("Hoja1").Cells(ultimafilaauxiliarZB1 + 1, 12) = Range("D23").Value
        Sheets("Hoja1").Cells(ultimafilaauxiliarZB1 + 1, 13) = Range("C23").Value
        
     End If
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-08 09:41:21

您需要在哪个工作簿Sheets("Hoja1")中指定如下:

代码语言:javascript
复制
Workbooks("DASHBOARD_FINAL0000.xlsx").Sheets("Hoja1") 

代码语言:javascript
复制
ThisWorkbook.Sheets("Hoja1") 

请注意,ThisWorkbook是代码编写的工作簿,而ActiveWorkbook是有焦点的工作簿(在顶部)。

此外,您还需要为all (您的Range对象)指定一个工作簿和工作表。

代码语言:javascript
复制
 Dim wsHoja1 As Worksheet 'define your worksheet
 Set wsHoja1 = ThisWorkbook.Worksheets("Hoja1")

 If (ActiveSheet.Range("D23").Value > 49) Then
    ultimafilaauxiliarZB1 = wsHoja1.Range("L" & wsHoja1.Rows.Count).End(xlUp).Row
    wsHoja1.Cells(ultimafilaauxiliarZB1 + 1, 12) = ActiveSheet.Range("D23").Value
    wsHoja1.Cells(ultimafilaauxiliarZB1 + 1, 13) = ActiveSheet.Range("C23").Value
 End If
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63788359

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档