2.深入解析数据类型与变量——《Excel VBA 程序开发自学宝典》
2.1 数据类型
|
数据类型 |
所占字节 |
|
Byte |
1 |
|
Boolean |
2 |
|
Integer |
2 |
|
Long |
4 |
|
Single |
4 |
|
Double |
8 |
|
Currency |
8 |
|
Decimal |
14 |
|
Date |
8 |
|
Object |
4 |
|
String |
10 |
|
Variant |
16 |
实例
Sub test()
Dim sums as long, cell as range, I as integer, mystr as string
For each cell in range(“A1:A10”)
If vba.isnumeric(cell) then sums = sums + cell else mystr = mystr & cell
If cell = “” then I = I +1
Next cell
Debug.print “A1:A10中有空白单元格” & I &”个”
Debug.print “A1:A10中数据和为:” ; sums
Debug.print “A1:A10中文本为:” ; mystr
End sub
2.2 数据类型转换
|
函数 |
返回类型 |
|
Cbool |
Boolean |
|
Cbyte |
Byte |
|
Ccur |
Currency |
|
Cdate |
Date |
|
cbdl |
double |
|
Cdec |
Decimal |
|
Cint |
Integer |
|
Clng |
Long |
|
Csng |
Single |
|
Cstr |
String |
|
cvar |
variant |
实例:
Sub 类型转换()
Dim funds as double
Funds = 80.42454
Msgbox “类型:” & typename(funds) & “值:” & funds ‘typename()用于识别数据类型
Msgbox “类型:” & typename(cbool(funds)) & “值:” & cbool(funds)
Msgbox “类型:” & typename(cbyte(funds)) & “值:” &cbyte( funds)
End sub
2.3 变量
实例:
Sub 显示用户名()
User_name = application.inputbox(“请输入您的姓名” , “姓名”,,,,,,2)
Msgbox user_name
End sub
Dim temp as byte ‘在sub之前dim,此变量为模块级变量,或者用public申明
Sub a()
Temp = 10
Msgbox temp
End sub
Sub b()
Temp = temp + 10
Msgbox temp
End sub
Sub a()
Dim temp = as byte ‘在sub内dim,两个sub内的变量不相关,为过程级别变量
Temp = 10
Msgbox temp
End sub
Sub b()
Dim temp as byte
Temp = 20
Temp = temp + 10
Msgbox temp
End sub
Let A = 10 ‘对非对象变量赋值
Set A = range(“A10”) ‘对单元格对象赋值
Set A = [A10]
Sub 设置A10的字体()
Activeworkbook.sheets(“sheet2”).range(“A10”).font.name = “黑体”
Activeworkbook.sheets(“sheet2”).range(“A10”).font.colorindex= 3
Activeworkbook.sheets(“sheet2”).range(“A10”).interior.colorindex = 5
End sub
Sub 设置A10的字体二()
Dim rng as range
Set rng = activeworkbook.sheets(“sheet2”).range(“A10”)
Rng.font.name = “黑体” ‘设置单元格对象后,程序简化很多而且提升效率
Rng.font.colorindex = 3
Rng.interior.colorindex = 5
End sub
2.深入解析数据类型与变量——《Excel VBA 程序开发自学宝典》的更多相关文章
- 1.VBA 基本概念——《Excel VBA 程序开发自学宝典》
1.1 常见对象及含义 对象名 含义 application 整个Excel应用程序 window 窗口 worksheet 一个工作表 sheets 指定工作簿的所有工作表的合集 shaperan ...
- 3.编写sub过程及开发函数——《Excel VBA 程序开发自学宝典》
3.1 编写sub过程 实例: Sub 建立10个表() If sheets.count>=10 then exit sub Sheets.add , sheets(sheets.count) ...
- Excel VBA入门(一)数据类型
与其它的编程语言一样,VBA也有它自己的数据类型.讲到数据类型,就离不开"变量"与"常量"这两个概念,变量与常量,都是用于保存数据的.顾名思义,"变量 ...
- [Python] 文科生零基础学编程系列二——数据类型、变量、常量的基础概念
上一篇:[Python] 文科生零基础学编程系列--对象.集合.属性.方法的基本定义 下一篇: (仍先以最简单的Excel的VBA为例,语法与Python不同,但概念和逻辑需要理解透彻) p.p1 { ...
- excel vba 数据分析
(Visual Basic Application) VBA(Visual Basic for Application)是Microsoft Office系列软件的内置编程语言,其语法结构与Visua ...
- Office EXCEL VBA数组如何使用
Excel VBA数组入门教程 1. 前言:不要把VBA数组想的太神秘,它其实就是一组数字而已. 2. 数组的维数: Sub 数组示例() Dim x As Long, y As Long Dim ...
- Excel VBA入门(九)操作工作薄
虽然我前面讲过,在VBA中操作工作薄并不是件明智的事,但有些时候,还是避免不了要这么做.绝大多数情况下,我们要做的是获取到某个工作薄对象,并以此来获得其中的工作表对象,然后再对工作表中的数据进行处理. ...
- Excel VBA入门(六)过程和函数
前面讲过,VBA代码有两种组织形式,一种就是过程(前面的示例中都在使用),另一种就是函数.其实过程和函数有很多相同之处,除了使用的关键字不同之外,还有不同的是: 函数有返回值,过程没有 函数可以在Ex ...
- Excel VBA入门(五)Excel对象操作
本章是本系列教程的重点.但我觉得应该不是难点.从第零章开始到学完本章,应该可以把VBA用于实战中了. Excel对象主要有4个: 工作薄 Workbook 工作表 Worksheet 单元格区域 Ra ...
随机推荐
- iOS网络缓存的系统实现是一个烂尾工程
烂尾的原因是request的一致性比较接口没有开放出来.
- MongoDb 物理位置应用实现
1代码实现 官方驱动2.7版本 1.1范围查找 /// <summary> /// 半径范围查找位置信息 /// </summary> /// <param name=& ...
- Java并发编程--1.Thread和Runnable
创建线程 Java有两种方式创建线程, 继承Thread类和实现Runnable接口 继承Thread 步骤: 1.自定义一个类继承Thread类, 重写run方法 2.创建自定义类的对象,调用sta ...
- criterions的选择
criterions分为几类,其中有classification criterions与regression criterions.classification criterions是针对离散的,re ...
- Uva514
https://vjudge.net/problem/UVA-514 #include <bits/stdc++.h> using namespace std; ; int target[ ...
- Linux内存调试工具初探-MEMWATCH(转)
C 语言作为 Linux 系统上标准的编程语言给予了我们对动态内存分配很大的控制权.这种自由可能会导致严重的内存管理问题,可能导致程序崩溃或随时间的推移导致性能降级. 内存泄漏(即 malloc() ...
- CANOPEN开发问题
我是一名研二的学生,现在教研室要开发canopen,我已经看了几个月了,在网上找了canopen的开源代码CANfestival,现在想做移植,有几个问题想要请教:1,开发主站,只买beckhoff的 ...
- CPP strcat函数使用
strcat函数原型 char * strcat ( char * destination, const char * source ); strcat常见写法 // main.cpp // 字符数组 ...
- C# 获取北京时间 (根据纪元时间(1970/1/1)转换为DateTime)
根据纪元时间(1970/1/1)转换为DateTime WebClient wc = new WebClient(); s= wc.DownloadString("http://api.ti ...
- 对Dataguard的三种模式的理解
模式1:最大可保护模式: 必须同步. 模式2:最大可用性模式: 能同步就同步,不能同步就不同步. 模式3:最大性能模式: 异步模式.