精华内容
下载资源
问答
  • VBA读写Excel文件报错Debug一、VBA简介二、VBA读写Excel文件参考文档 一、VBA简介 VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。...

    一、VBA简介

    VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。主要能用来扩展Windows的应用程序功能,特别是Microsoft Office软件。
    可以认为 VBA 是非常流行的应用程序开发语言 VASUAL BASIC 的子集.实际上 VBA 是"寄生于" VB 应用程序的版本。
    一般宏语言在office软件如word和Excel中应用的广泛一些,可以通过菜单栏中的视图——宏——录制宏来进行自动化操作编程。

    二、VBA读写Excel文件

    以在excel程序中编辑VBA为例,

    Sub2()
    '
    ' 宏2 宏
    '
    Dim wb As Workbook
    Dim ws As Worksheet
    Dim fn$
    Dim p0$
    fn="D:\test.xlsx"
    p0 = "5"
    Set wb = Workbooks.Open(fn)
    Set ws = wb.Sheets(1)
    ws.Cells(15, CInt(p0)) = "hello"
    End Sub
    

    代码中wb即为工作簿对象,ws即为工作表对象,Sheets(1)就是选中第一个工作表sheet1,Cells(r,c) 是选择单元格指令,r是行数,c是列数,这里行和列都以整数表示。

    三、调用Cells报错

    上述代码中ws.Cells(15, CInt(p0)) = "hello"语句执行没有问题,但是改成ws.Cells(15, p0) = "hello"就会报错,经过调试发现调用Cells(r,c)时,r的数据类型可以是整数也可以是字符串型,而c只能是整数,如果是字符串类型就会报如下图应用程序定义或对象定义错误
    在这里插入图片描述
    所以如果c的类型是字符串类型,就需要使用CINT(c)转换为整数类型。

    参考文档

    Workbooks.Open 方法 (Excel)
    如何Word中用VBA打开Excel表格,读取其中的内容写入到Word
    Workbook 对象 (Excel)

    展开全文
  • VBA Debug 的使用

    2010-03-30 17:53:00
    VBA编程中,也有debug的功能使用,但与C# 及C++ 有点不同。特别在watch某个对象的时候,必须得选中,然后按shift +F9可以进行 quick watch. 请注意以下几点: · 插入断点,把鼠标放到某一行的代码前面,左击...

    VBA编程中,也有debug的功能使用,但与C# C++ 有点不同。特别在watch某个对象的时候,必须得选中,然后按shift +F9可以进行 quick watch. 请注意以下几点:

    ·         插入断点,把鼠标放到某一行的代码前面,左击鼠标就可以插入断点,取消断点只要在断点上左击鼠标就ok

    ·         单步调式――――  F8。可以用鼠标放上去查看某个系统定义的变量的值,对于自定义的"引用类型的值,可以通过上面提到的quick watch 去查看其值的变化"

    ·         在调式的过程中,如果对调式机制不熟,那么输出某个值是最好的呈现形式,特别是对初学者来说。这时候可以使用 MsgBox "Message"方法。

    对于上面的代码进行调式,如下图:

    这时候会看到 参数 table ="SpecSkill",但是list的值为空,因为在VBA 中默认的参数传递是引用传递(ByRef),而不是值传递(ByVal)。 所以list的值并没有取代前面传过来的combo box 控件的值。

    让我们继续往下看:

     

    选中list,然后 shit+F9,这时候会出现一个对话框,看到Expression 的值是list. 但没有获取value. 点击 add. 就可以看到以下结果:

    其余的一些功能和C# C++差不多。

    转载于:https://www.cnblogs.com/tomin/archive/2010/03/30/Excel_vba_series6.html

    展开全文
  • VBA调试利器debug.print

    千次阅读 2017-06-12 20:05:00
    VBA程序调试过程中,常常须要监控变量的值,尽管MsgBox也能够完毕这个功能,但用debug.print显示变量或者表达式的值。有非常多长处。详细例如以下: 1、不影响程序运行。尽管MsgBox也能够显示代码运行结果,可...

    作者:iamlaosong

    百度一下。非常easy找到debug.print解释和使用介绍。事实上非常简单。就是将代码运行结果显示在“马上窗体”中,但不影响程序运行。VBA程序调试过程中,常常须要监控变量的值,尽管MsgBox也能够完毕这个功能,但debug.print显示变量或者表达式的值。有非常多长处。详细例如以下:

    1、不影响程序运行。尽管MsgBox也能够显示代码运行结果,可是每次要按确定button才干继续下去,碰到大的循环语句简直无法进行;

    2、程序调试结束后。应屏蔽这些调试语句。但即使有遗留的debug.print也不影响用户使用。MsgBox则不行;

    3、最大的优点是:对于变量的值,能够在“马上窗体”慢慢研究,能够复制出来研究,比方我们要合成一个SQL语句。但运行时出错了,错在哪儿?程序中变量和值搅和在一起,非常难找出出错点。尤其是引號和括号较多时。将合成好的SQL语句复制出来运行一下,能够轻松找到问题,MsgBox则不行。

    顺便说一下马上窗体(按Ctrl+G或菜单选择),除了显示debug.print的运行结果外。在调试期间在马上窗体还能够直接输入语句。按回车后显示语句的运行结果,也能够用“?变量名”来显示变量的值(尽管鼠标移到变量上方时也会显示变量值,但假设值太长,是显示不全的)。比如,假设有个变量是mystr,能够在马上窗体输入以下例句:

    ? mystr

    ?

    left(mystr,5)

    ? instr(mystr,":")

    if len(mystr)>0 then msgbox mystr


    展开全文
  • 1、VBADebug.Print() Sub test() a = 1 b = 2 Debug.Print a Debug.Print a; b'分号可以进行连续输出 End Sub Debug.Print可以在立即窗口看到输出结果 2、立即窗口调出方式 1.单击视图-->>...

    1、VBA:Debug.Print()

    Sub test()
        a = 1
        b = 2
        Debug.Print a
        Debug.Print a; b'分号可以进行连续输出
    End Sub
    

    Debug.Print可以在立即窗口看到输出结果

    2、立即窗口调出方式

    1.单击视图-->>单击立即窗口

    2.使用快捷键:Ctrl+G

    展开全文
  • 如何Debug Access 中的VBA

    2009-04-25 15:44:22
    When I click the "... command in the VBA editor I get a macro list. The code doesn't execute. The "Step Into (F8)" command doesnt work either. What am I doing wrong? >On Mar 30...
  • 使用Debug窗口 ,通过鼠标操作 ■打开方法 Step1.鼠标右键点击工具栏,在弹出的菜单中选中【调试】 Step2.软后,通过下面的Debug窗口就可以进行调试了。 ----- ■各种快捷键定义 ...
  • Eclipse、VBA、IE开发者工具 Debug快捷键 ■Eclipse ・F6:单步执行,不进入方法 ・F5:单步执行,进入方法 ・F7:从进入的方法中返回 ・F8:继续执行 ■IE开发者工具 ・F10:单步执行,不进入方法 ・F11:单步执行...
  • VBA中,debug.print 当函数用,当语句用都可以 Debug.Print a, b, c ',相当于tab Debug.Print a; b; c ';在中间相当于小空格 Debug.Print a & b & c '&直接相连 ;作用,在中间相当小空格,末尾表示...
  • word文档内容格式:Excel表格格式:二、实现思路利用ExcelVBA和Word进行交互操作,根据段落进行初步的内容定位,再利用正则表达式提取段落中的有效信息。三、实现代码Public Sub ExcelVba正则提取...
  • 1111
  • VBA基础

    2020-07-04 10:41:08
    目录对象语法规则VBA常见的数据类型数据类型声明判断语句循环语句结束语句跳转语句错误分支重复利用对象公式与函数运算符禁止/允许弹出警示窗口立即debug运行窗口输出VBA字典技术(类)正则表达式工作簿与工作表工作...
  • vba 代码

    2019-11-27 11:11:27
    Excel vba 快捷运行F5 逐条运行F8 MsgBox 弹框 Debug.Print 在立即窗口打印 Sub 随机1() '定义i取1到20 For i = 1 To 20 ' 随机取1到200数 Range("a" & i) = Application.RandBetween(1, 200) ' 随机取颜色1到...
  • VBA字典问题

    2020-05-19 17:17:26
    VBA字典问题 可以直接把cells(1,1)加入key, 但问题是这个Key有点特殊, 造成一些理解与取值上的问题如下 Sub Test() Dim d, dK Set d = CreateObject(“scripting.dictionary”) d(Cells(1, 1)) = 0 For Each dK In d...
  • vba窗口介绍

    2018-05-06 21:39:01
    显示使用语句Debug.Print输出的结果。2.属性窗口:可以列出工程管理器中所有属性以及属性的值。用户可以对属性进行查询和修改。3.代码窗口:是VBA中必不可少也是最常用的窗口。当用户在工程管理器中双击某个对象时,...
  • VBA学习

    2014-10-08 21:07:46
    Debug.Print "Count1:"; Count1 Print的语法说要用分号连接
  • Excel VBA获取最后一行列

    万次阅读 2015-11-04 21:17:31
    VBA代码: Function getLastRow()  Debug.Print "End(xlUp):" & Sheets(1).[A65536].End(xlUp).Row  Debug.Print "usedRange:" & ActiveSheet.UsedRange.Rows.Count  Debug.Print "find
  • Debug.print的用法

    2019-10-01 15:42:46
    使用Debug.print可以用来更好的调试VBA程序 通过ALT+F11代开VBA编程窗口) 插入模块,接着在窗口中输入以下代码,按F5执行 Sub Excute() Debug.Print 50 * 20 + 1 End Sub 结果如下: 实例二: ...
  • Debug.Print IsEmpty(arr) “结果为啥为false??” Debug.Print IsEmpty(arr1) If (Not arr) <> -1 Then ‘啥原理???’ MsgBox "数组被赋值了" Else MsgBox "数组没有被赋值" End If End ...
  • Technorati 标签: VBA,debug,error-trapping,watch,local,step into it来自:Julitta Korol,“Access.2003.Programming.by.Example.with.VBA.XML.and.ASP”,by Wordware Publishing, Inc. 2005, p142-p168(1)VBA...
  • 但我想知道是否有更有效和简洁...陆地生物'declarationPublic Sub eat()End SubPublic Sub breathe()End SubImplements IAnimal' method implementationPrivate Sub IAnimal_eat()Debug.Print "I'm eating somethin...
  • VBA行拷贝

    千次阅读 2016-05-05 23:39:01
    Sub 拷贝信息()Dim workbookTmp As Workbook Dim worksheetTmp As Worksheet Dim rangTmp As Range Dim i% Dim j% Dim newI%'当前工作表格可以使用ThisWorkbook ...Debug.Print ActiveWorkbook.Nam
  • <div><p>In a new Sub type <pre><code>Debug.? Update </code></pre> <p>Upon hitting "(" to open parentheses, the line becomes <pre><code>Debug.Print Up();...rubberduck-vba/Rubberduck</p></div>
  • 需求:VBA中可使用DEBUG.PRINT语句在立即窗口中输出一些调试信息,但并没有保存下来,容易丢失且不易查看。如果能将这些信息输出的文件,相当于生成了程序的日志文件,那作用可就大了。代码:Sub getComment() Dim ...
  • "代替”debug.print”,这样书写起来应该更省事些.下面验证一下是否在VBA程序中也可以这样代替. 验证之后的结论:"?"只能在立即窗口中使用,如果在编辑窗口中使用的话,会被自动替换成Print,而导致错误. 4.如果要求...
  • VBA基础教程 ...Next语句Exit语句With语句调试程序Debug调试IDE调试错误处理事件触发工作簿的事件窗体事件OnTime事件窗体按钮控件文本框控件excel里面的窗体使用 VBA简介 VBA即Visual Basic For Appilication

空空如也

空空如也

1 2 3 4 5 ... 18
收藏数 359
精华内容 143
关键字:

debugvba