Sub 设置隔行背景色()
'设定背景色颜色
Const Gray = 10
‘选定开始的一排为A2
Range("A2").EntireRow.Select
‘直到遇到空cell之前一直循环
Do WhileActiveCell.Value <> ""
‘将选定行涂成指定背景色
Selection.Interior.ColorIndex = Gray
‘将活动单元格下移两排
ActiveCell.Offset(2, 0).EntireRow.Select
Loop
End Sub
1. 关键词Sub...EndSub开始和结束宏,格式为:
Sub 宏名()
<代码>
End Sub
一个子程序由一组代码语句组成,以Sub开始,EndSub结束。子程序不一定是宏。可以从一个子程序中调用另一个子程序,例:
Sub 我的第一个宏()
我的第二个宏()
End Sub
2.Excel对象模型使用面向对象编程。例:
Set ws =ActiveWorkbook.Worksheets.Add
Range("A1").Value = "I am astudent."
这里有3个对象,ws代表Worksheet对象,ActiveWorkbook对象代表当前工作簿,Range对象代表在当前工作表中的单元格区域。
当第一次使用某对象变量时,以Set关键字开始,为该对象分配所需的内存空间,并可为对象变量命名,如ws。
方法总是与对象相关联。如“我的第一个宏”中包含一个add的方法,它与ws对象相关。使用方法时,应在对象和方法之间添加一个句点,例:worksheet.add。在上面的代码中,使用Add方法在活动工作簿中添加了一个新的工作表。
属性也总是与对象相关联。在上面的代码中,包含一个属性Value,它与Range对象相关。同方法一样,使用属性时,也应在对象与属性之间加.,如range.rowheight
好吧在中文教程里纠结了半天,还是转战英文了,当然编程三日谈那个还是很棒的。
Tip1
由于mac没有rowsource这个异常好用的东西,在创建combobox和listbox的时候需要用:
Private Sub UserForm_Initialize()
Dim aCell As Range
For Each aCell InRange("性别")
ComboBox1.AddItem (aCell.Value)
Next
End Sub
或者:
Private Sub UserForm_Initialize()
ComboBox1.List =Worksheets("工作表1").Range("A1:A5").Value
End Sub
或者:
Private Sub UserForm_Initialize()
UserForm2.Typetxt.Clear
UserForm2.materialTypetxt.AddItem "Glass/Cell/polymer"
End Sub
Tip2
不小心把vba的工具栏删掉了怎么破:打开VBA,上侧 查看->工具栏 -> 标准
Tip3
Excelvba是可以debug的,在调试(debug)栏,遗憾的是mac的快捷键设置很诡异。。当然这个功能帮了大忙╮(╯▽╰)╭
Tip4
Userform里的字体大小通过双击属性栏里的font可以调整
Tip5
Dim Thesheet As Worksheet
Set Thesheet =Sheets("sheet1")
比:Sheets("sheet1")要快
Tip6