• 如何用vba获取QQ网络数据采集时的bkn参数?

    在进行QQ相关内容的网络数据采集时,经常看到需要附带bkn参数的时候。

    经过分析QQ的网页JS,找到了bkn参数的获取算法如下:

    其中skey参数为登录QQ后的Cookie中附带的参数。

    根据上述的Javascript算法,可以将其转换为如下的[……]

    阅读全文

  • 如何用vba获取沪深A股的所有交易日的日期?

    A股的交易日规定为凡是法定节假日和周末都不算交易日,其它日期都算交易日。

    基于以上的知识,可以使用如下的代码获取2018年整年的沪深A股的所有交易日的日期:

    以上代码将把所有交易日期存储在arr数组中。

    如果想要做成一个函数的,可以使用如下的代码:

    [……]

    阅读全文

  • 如何用vba合并多个excel文件的内容?

    将多个工作簿的内容合并到一个工作簿是一个经常会碰到的问题。

    它的一般步骤是:

    1.打开结果工作簿

    2.遍历要合并的工作簿所在的文件夹

    3.打开其中一个工作簿

    4.将数据写入结果工作簿

    5.关闭步骤3中打开的工作簿

    6.重复步骤3-步骤5

    7.调整结果工作簿的格式

    8.弹出合并结束的消息

    基于以上的步骤,可以使用如下的模板代码:
    [cra[……]

    阅读全文

  • 如何写vba根据任意选择的字段名拆分工作表数据?

    将单元格区域的数据按照某个字段进行拆分,是一个经常需要遇到的问题。

    以下代码利用字典按照任意字段拆分单元格区域的数据,同时将拆分后的数据单独另存为一个excel工作簿。

  • 如何在vba中用FileDialog打开选择文件对话框时筛选过滤文件?

    如何用vba打开选择文件和选择文件夹对话框? 一文中我们介绍了使用vba内置的FileDialog对象用于操作打开文件和选择文件夹对话框。

    当用 Application.FileDialog(msoFileDialogFilePicker) 弹出选择文件对话框时,默认会显示所有文件。

    我们经常需要只显示某类文件,比如只显示excel 文件或者只显示word 文件。

    这时候可以使[……]

    阅读全文

  • 如何在vba中将单元格的文本地址转换为range对象?

    如何在vba中返回单元格Range对象的地址?一文中我们介绍了如何返回单元格的地址。

    相反地,我们也会遇到需要把单元格地址转换为单元格Range对象。

    vba中提供了Application对象的Evaluate方法可以直接把正确的单元格地址转换为单元格Range对象。

    代码如下:

    当单元格地址是不含外部引用时[……]

    阅读全文

  • 如何在vba中返回单元格Range对象的地址?

    在编写vba解决方案时,有时候会遇到需要获得单元格的地址。

    在vba中可以使用range对象的Address属性,它的语法如下:

    它的5个参数都是可选的,其中RowAbsolute , ColumnAbsolute参数默认为True,表示返回单元格的绝对引用,ReferenceStyle参数表示是返回A1类型的引用还是R1[……]

    阅读全文

  • 为什么在vba中使用Application.InputBox无法选择单元格区域?

    Application.InputBox 方法可以弹出选择对话框,选择单元格区域。

    但是如果在vba代码中设置了Excel.Application.ScreenUpdating = False 则会导致无法选择单元格区域。

    如果要设置Excel.Application.ScreenUpdating = False,需要在Application.InputBox 语句之后设置。

    以[……]

    阅读全文

  • 如何在vba中求最大值?

    vba的内置函数或语句里没有求最大值的函数。

    但是excel单元格函数中有max函数可以求最大值。

    通过如何在vba中调用excel工作表函数?一文,我们可以通过在vba中调用excel工作表函数max来实现求最大值的目的。

    代码如下:

     

     

  • 如何用vba将多个工作表另存为独立的工作簿文件?

    当用鼠标右键单击工作表名称标签,在弹出的快捷菜单中选择“移动或者复制”命令,在弹出的“移动或者复制工作表”对话框中可以选择将工作表移动到当前工作簿中的任意一个工作表的位置之前或之后,也可以将工作表移动到一个新的空白工作簿。

    在vba中,Worksheet对象的Copy方法可以实现以上的功能。

    它的语法如下:

    其中 B[……]

    阅读全文