精华内容
下载资源
问答
  • VBA findNext nothing 问题

    2020-04-19 17:59:03
    cel).Value & "*" Then functionRetStr = functionRetStr & "," & ActiveSheet.Cells(rngTemp.Row, cel).Value End If Loop Until rngTemp Is Nothing Or rngTemp.Address = firstAddress End If Set rngTemp = ...
    Function test(cel As Integer) As String
       Dim functionRetStr As String '方法返回值
       Dim currentValue As String '调用方法单元格第一列值
       Dim totalRow As Long '总行
       Dim rngTemp As Range '搜索
       Dim rngA As Range
       functionRetStr = ""
       totalRow = ActiveSheet.[A65536].End(xlUp).Row
       currentValue = Cells(Application.Caller.Row, 1).Value
       Set rngA = Range("A1:A" & totalRow)
       Set rngTemp = rngA.Find(what:=currentValue, LookAt:=xlWhole)
       If Not rngTemp Is Nothing Then
            
            firstAddress = rngTemp.Address
            If IsError(ActiveSheet.Cells(rngTemp.Row, cel)) = False Then
                functionRetStr = ActiveSheet.Cells(rngTemp.Row, cel).Value
            End If
            
            Do
                Set rngTemp = rngA.Find(what:=currentValue, LookAt:=xlWhole, after:=rngTemp)
                If IsError(ActiveSheet.Cells(rngTemp.Row, cel)) = False Then
                    If Not functionRetStr Like "*" & ActiveSheet.Cells(rngTemp.Row, cel).Value & "*" Then
                       functionRetStr = functionRetStr & "," & ActiveSheet.Cells(rngTemp.Row, cel).Value
                    End If
                End If
            Loop Until rngTemp Is Nothing Or rngTemp.Address = firstAddress
       End If
       Set rngTemp = Nothing
       test = functionRetStr
    End Function
    

     

    展开全文
  • VBA之find找数据的使用

    2020-03-30 21:30:34
    在一堆数据里查找某个数据,用find函数,要注意查找不到的情况 代码如下 Sub test() Dim rng As Range ...If Not rng Is Nothing Then '判断容器是否为空 Range("m3") = rng.Offset(0, 3) End If...

    在一堆数据里查找某个数据,用find函数,要注意查找不到的情况
    代码如下

    Sub test()
    Dim rng As Range

    Set rng = Range(“d:d”).Find(Range(“l3”))
    '把查找的内容放到rng容器里

    If Not rng Is Nothing Then
    '判断容器是否为空
        Range("m3") = rng.Offset(0, 3)
    End If
    

    End Sub

    在这里插入图片描述

    展开全文
  • 【LuKS】Vba if not c is nothing

    千次阅读 2017-09-05 11:41:48
    在对excel宏调整的时候,发现以下一段代码,在网上查阅资料后,理解如下: ...If Not c Is Nothing Then s = c.Address source.Cells(c.Row, 7) = "yes" Set c = source.UsedRange.FindNext(c) Do W

    在对excel宏调整的时候,发现以下一段代码,在网上查阅资料后,理解如下:

    If Not c Is Nothing Then
            s = c.Address
                source.Cells(c.Row, 7) = "yes"
                Set c = source.UsedRange.FindNext(c)
                Do While Not c Is Nothing And s <> c.Address
                    source.Cells(c.Row, 7) = "yes"
                    Set c = source.UsedRange.FindNext(c)
                Loop
            End If

    1. 常用 算术 比较 逻辑运算符如下:

    算术比较逻辑
    指数运算 (^)相等 (=)Not
    负数 ()不等 (<>)And
    乘法和除法 (*/)小于 (<)Or
    整数除法 (\)大于 (>)Xor
    求模运算 (Mod)小于或相等 (<=)Eqv
    加法和减法 (+)大于或相等 (>=)Imp
    字符串连接 (&)

    Like Is

    2. if not c is nothing   先运算 is 比较运算符,再进行not 逻辑非运算。

    比较运算符,即Is运算符,可用于判断两个对象变量是否指向同一个对象,其语法为:
        结果=对象1 Is 对象2
    如果对象1和对象2都指向同一个对象,其结果为True;否则,结果为False。
    还可以用Is运算符来判断一个对象变量是否符合要求,例如,条件判断语句If c Is Nothing Then 表明,如果对象变量objVar没有对象引用,则为True,执行Then后面的语句。


    Not 对一个表达式进行逻辑非运算,即如果表达式为True,则Not运算符使该表达式变成False;如果表达式为False,则Not运算符使该表达式变成True;如果表达式为Null,则Not运算符的结果仍然是Null。其语法为:
        结果=Not 表达式
                                         出处---------------《vba编程系列之运算符和表达式》

     

    展开全文
  • VBA常用的系统空值关键字:nothing ,empty ,null 1.1 三者区别 empty 有效的空值,如0 "",比较常用 null 无效的控制,比如二选一之外的空 nothing 对象变量的空值, 语法是 object is nothing 而不是用 =...

     

     一 VBA常用的系统空值关键字:nothing ,empty ,null 

    1.1 三者区别

    • empty        有效的空值,如0  "",比较常用
    • null            无效的控制,比如二选一之外的空
    • nothing      对象变量的空值, 语法是  object is nothing  而不是用 =nothing

     

    1.2 empty null  nothing 三者的区别

     

    1.3 举例 因为range().find() 返回的是 对象,所以得用 is nothing

    ​
    Sub test5032()
    Dim a As Range
    in1 = InputBox("请输入一个电影名")
    Set a = Range("a1:a15").Find(in1)
    If a Is Nothing Then
        Range("A" & 1 + Range("a65536").End(xlUp).Row).Value = in1
    Else
        MsgBox "内容重复了"
    End If
    End Sub
    
    ​

     

    二 VBA常用的系统空值关键字:err

    2.1 err相关关键字

    • 常用的报错处理相关的函数
    • iserror()
    • 变量=err , 然后判断 err.number= int

     

    2.2 和 false 没啥关系

    • 而 true  false 是一对 bool值
    • false和err没啥关系

     

    2.3 err=err.bumber 的具体值

    • 首先,err不是布尔值,并不是err=0  表示没错误, err=1 表示是出错
    • err 其实是 err.number
    • err=0 表示 err.number=0 没出出错
    • err.number有很多出错数字

     

     

    2.4 举例

    • 使用查找,匹配函数时,要先进行错误处理
    • 但同时要对错误值和空值有区分,if err=0 
    • 如果需要处理错误值,则要可能要先加一个语句  on error resume next
    • 这里如果判断 if a=err 没啥意义
    Sub aa31()
    On Error Resume Next
    in1 = Int(InputBox("请输入1个要查的数字"))
    a = WorksheetFunction.Match(in1, Array(1, 2, 3, 4, 5), 0)
    
    If Err = 0 Then
       Debug.Print a
    Else
       Debug.Print "没找到!"
    End If
    End Sub
     
    展开全文
  • 辨析VBA中的Empty,Null和Nothing

    千次阅读 2013-04-16 15:46:00
    VBA中变量一般都是强类型的,即总声明成Integer,Long,Single,Double,String或Date等类型,这些强类型的值毋需考虑Empty、Null和Nothing。 有时我们需要定义一种能包含所有类型的变量,这种类型就是Variant,...
  • =indirect() 引用的空单元格,会自动返回0 5 VBA里所谓的 “空值” 或者 " 置空变量" 具体是什么,则和变量类型有关 1 数值型的变量 默认 0 2 字符串 string 默认 “” 就是空。 3 Variant类型变量 默认用 null 但...
  • 对象数组 将每个元素设为特定值 Nothing。 Empty:指尚未对 Variant 变量指定初始值。 用数值表示时,以 0 表示; Empty 变量,在字符串表示时,则以零长度字符串 ("") 表示它。 注:Erase 释放动态数组所使用的...
  • ‘订单生成系统.xls ‘f6-第6列,f2-第2列 Private Sub Worksheet_Activate() On Error Resume Next Dim x As Object, yy As Object, sql... Set yy = Nothing Set x = Nothing End Sub 2,用ADO Connection对象查询
  • VBA调用Shell

    2021-08-28 15:32:59
    VBA中执行Shell介绍,打开应用,执行python、bat、mysql;
  • Vba菜鸟教程

    万次阅读 多人点赞 2020-05-02 18:21:15
    文章目录Vba菜鸟教程编辑器宏vba基本语法运算符变量语句简写语句sub语句调用语句退出语句分支语句循环语句判断语句公式与函数在单元格输入公式利用单元格公式返回值调用工作表函数利用vba函数自定义函数操作对象操作...
  • 大家好。 只是定义了数组,但由于把数组赋值时放到了if语句里,导致可能由于没有符合if语句的情况而没有给数组具体赋值,然后对数组进行其他操作(比如进行数组内数值排序)就会报错。 我想问下,怎么判断通过...
  • 大家好,我们今日讲解“VBA信息获取与处理”教程中第九个专题“利用IE抓取网络数据”的第三节“利用IE,抓取解禁股票数据”,这个专题是非常有用的知识点,希望大家掌握。第四节 利用IE,抓取解禁股票数据大家好,这...
  • VBA学习笔记1-VBA集合Collection

    千次阅读 2019-12-28 14:08:43
    VBA集合Collection创建集合集合常用属性和方法添加集合大小读取集合特定元素内容集合删除办法 创建集合 Dim c As New Collection 集合常用属性和方法 添加 语法:Collection.Add (item,key,before,after) item:...
  • Here is another topic that comes up every... MS Excel via VBA? I’ll try to give an introduction into that subject in this document. I will only discuss the basics, but I’m open for suggestions about wh
  • ExcelVBA之If then

    2020-06-05 21:18:42
    VBA过程里面作决定的最简单的方法就是使用If…Then语句。假使你想要基于某个条件选择一个行动,那么你可以使用下述结构: If 条件Then 语句1 语句2 语句N End If 如何使用On Error GoTo标志语句来绕过循环...
  • VBA中启动其它程序

    2021-10-03 13:40:56
    VBA中启动其它程序前言VBA自带的Shell方法语法示例参数返回值WshShell对象WshShell对象的Run()方法语法:示例:参数:返回值:WshShell对象的exec()方法语法:示例:参数返回值Run()方法与Exec()方法的差异 前言 在程序...
  • vba if vba7_VBA隐写术

    2020-07-10 15:03:25
    vba if vba7 描述 隐秘术是将信息隐藏在清晰的视野中的行为。 隐写术的工作原理 一种流行的实现方式是获取现有的图像文件并操纵这些位以隐藏消息,而不会显着更改图像或增大大小。 它通过获取代表像素中颜色的每个...
  • VBA字典(dictionary)

    万次阅读 多人点赞 2017-06-25 22:19:29
    这是我看到的最简单明了的Excel VBA字典(dictionary)的教程,把字典的应用,用短短几百字,全部道尽,简!但精彩!原文如下: 当年我(原作者:彭希仁)向LDY版主求教字典的时候,他老人家总结了一句话“呼之即来,挥...
  • VBA常用代码合集

    千次阅读 多人点赞 2020-12-19 11:13:11
    VBA常用代码模版Tp0️⃣—零零散散小功能(持续更新)Tp1️⃣—输出活动页面筛选后的行数Tp2️⃣—创建数组存放数据Tp2-1 静态数组Tp2-2 动态数组Tp3️⃣ 创建字典存放数据Tp4️⃣ 优化代码运行速度 Tp0️⃣—零零散...
  • Excel VBA编程

    2020-11-19 15:22:16
    8 1 概述 VBA使用编程的方式操作Excel的工作簿,工作表sheet,行row,列column,区域range,单元格cells等的值与属性。 2 基本语法 2.1 字母打头,由字母、数字和下划线组成 2.2 数据类型 包括String,Byte,...
  • VBA基本语法整理

    千次阅读 2019-03-02 12:16:28
    VBA基本语法整理 作者:Zjmainstay 最近为了一个调货程序,边学边用,终于是写出来了一个Excel VBA程序,其中学会了不少使用方法,借此整理出来,希望能够给后来的新人有所帮助。 1. VBA 局部变量和全局变量 1....
  • VBA Application 的四大方法

    千次阅读 2020-03-25 16:08:30
    findfile findfile 就是打开一个问题如果打卡成功,则返回为true Sub b() a = Application.FindFile MsgBox a If a = True Then MsgBox "dd" Else MsgBox "tt" End If ...这个函数和findfile有点不一样,这个函数是不会...
  • vba 队列实现

    2020-11-30 16:12:02
    Private Sub class_initialize() Set head = emptyNode Set last = emptyNode n = 0 End Sub Public Function isEmpty() As Boolean isEmpty = head.getNext Is Nothing End Function Public Property Get size() As...
  • VBA基础知识

    千次阅读 2019-11-12 14:18:36
    VBA入门学习笔记本关键词:VB、VBA、Microsoft office、excel、access、PowerPoint1.VBA的基本概念2 数据类型2.1 VBA基本数据类型2.2 VBA自定义的数据类型3 VBA常量3.1 VBA系统定义常量3.2 VBA固有常量3.2 VBA符号...
  • 大家好,今日内容仍是和大家分享VBA编程中常用的简单“积木”过程代码,这些内容大多是取至我编写的“VBA代码解决方案”教程中内容。NO.183-NO.184内容是:NO. 183:在VBA中使用MoveFile方法将示例文件移动NO. 184:...
  • Excel VBA 处理图形图表详解
  • VBA发送email

    千次阅读 2019-11-06 22:05:12
    通过VBA代码发送邮件 Sub SendEmail() Dim App As Object Dim Email As Object Set App = CreateObject("Outlook.Application") Set Email = App.CreateItem(0) With Email .Subject = "M...
  • 编写该代码的目的:初衷该代码最初用于我自己弄得一个用于批量化写word报告的东西,因为我原来需要写一堆格式化的报告,不同报告间除了数据发生了变化,其他几乎一模一样,我想偷懒(主要是我容易写错),就使用VBA写...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,117
精华内容 1,646
关键字:

nothingvba