VBA自学必备材料Word文件下载.docx
- 文档编号:19198847
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:45
- 大小:64.23KB
VBA自学必备材料Word文件下载.docx
《VBA自学必备材料Word文件下载.docx》由会员分享,可在线阅读,更多相关《VBA自学必备材料Word文件下载.docx(45页珍藏版)》请在冰豆网上搜索。
工作表标签上快捷菜单失效
8、Subaa()'
把B1到B12单元格的数据填入c1到c12
Fori=1To12
C"
&
i)=Range("
B"
i)
Nexti
9、ActiveCell.AddComment
Selection.Font.Size=12'
在点选的单元格插入批注,字体为12号
10、PrivateSubWorksheet_BeforeDoubleClick(ByValTargetAsRange,CancelAsBoolean)
Cancel=True
11、ScrollArea属性
参阅应用于示例特性以A1样式的区域引用形式返回或设置允许滚动的区域。
用户不能选定滚动区域之外的单元格。
String类型,可读写。
说明
可将本属性设置为空字符串("
"
)以允许对整张工作表内所有单元格的选定。
示例
本示例设置第一张工作表的滚动区域。
Worksheets
(1).ScrollArea="
a1:
f10"
12\ifapplication.max([a1:
e1])=10then
msgbox"
commandbutton1.enabled=false
'
A1—E1最大的数值达到10时,自动弹出对话框,并冻结按钮
12、本示例将更改的单元格的颜色设为蓝色。
PrivateSubWorksheet_Change(ByValTargetasRange)
Target.Font.ColorIndex=5
13、Subtest()'
求和
DimrngAsRange,rng2AsRange
ForEachrngInActiveSheet.UsedRange.Columns
Setrng2=Range(Cells(1,rng.Column),Cells(Cells(65536,rng.Column).End(xlUp).Row,rng.Column))
rng2.Cells(rng2.Cells.Count).Offset(1,0)=WorksheetFunction.Sum(rng2)
Nextrng
14、将工作薄中的全部n张工作表都在sheet1中建上链接
Subtest2()
DimPtAsRange
DimiAsInteger
WithSheet1
SetPt=.Range("
a1"
)
Fori=2ToThisWorkbook.Worksheets.Count
.Hyperlinks.AddAnchor:
=Pt,Address:
="
SubAddress:
=Worksheets(i).Name&
"
!
A1"
SetPt=Pt.Offset(1,0)
Nexti
EndWith
15、保存所有打开的工作簿,然后退出MicrosoftExcel。
ForEachwInApplication.Workbooks
w.Save
Nextw
Application.Quit
16、让form标题栏上的关闭按钮失效
PrivateSubUserForm_QueryClose(CancelAsInteger,CloseModeAsInteger)
IfCloseMode<
>
1ThenCancel=True
17、Subcountsh()'
获得工作表的总数
MsgBoxSheets.Count
18、SubIE()'
打开个人网页
ActiveWorkbook.FollowHyperlink"
about:
blank"
SendKeys"
{F4}{ENTER}"
True
19、Subdelback()'
一次性删除工作簿中所有工作表的背景
ForEachshtSheetInSheets
shtSheet.SetBackgroundPictureFilename:
20、[a1].formula="
=b1+c1"
A1中设定公式为=B1+C1
21、PrivateSubCommandButton1_Click()'
将A1到C6中大于=3的数依次放入E列
DimiAsLong
r=1
ForEachiInRange("
c6"
Ifi>
=3ThenCells(r,5)=i:
r=r+1
Next
22、PrivateSubWorkbook_SheetChange(ByValShAsObject,ByValTargetAsRange)'
显示带数字的表名
b=Split(Sh.Name,"
("
OnErrorGoToss
num=CInt(Left(b
(1),Len(b
(1))-1))
Ifnum>
=1Andnum<
20Then
MsgBoxSh.Name
EndIf
ExitSub
ss:
MsgBox"
error"
16,"
23、SubTest()'
选择所有工作表名以"
业报"
开头的工作表或头两个字是业报的报表名引用
SetSh=ActiveSheet
IfLeft(Sh.Name,2)="
Then'
或ifsh.namelike"
业报*"
then
你成功了"
64,"
24、1.建立文件夹的方法
MkDir"
D:
\Music"
2.打开文件夹的方法
ActiveWorkbook.FollowHyperlinkAddress:
NewWindow:
=True
25、在当前工作表翻页
Application.SendKeys"
{PGUP}"
{PGDN}"
或者
ActiveWindow.LargeScrollDown:
=1
=-1
26、当Target="
*小计"
时如何写,*代表任何字符。
ifinstr(target.value,"
小计"
)<
0then
PrivateSubWorksheet_SelectionChange(ByValTargetAsRange)
IfTarget.ValueLike"
ThenMsgBox"
OK"
EndSub
27、ActiveCell.FormulaR1C1="
=SUM(R[1]C:
R[14]C,R[59]C:
R[78]C)"
这是相对引用的写法:
根据推算你的函数是放在“AD6”单元格
你的函数:
R[14]C
中的
R"
表示行
表示列。
R[1]表示“AD6+1行"
,C表示“列没有变化,就是同列”那么:
R[1]C就表示AD7
同理,R[14]表示AD6+14行,表示:
AD20。
以此类推。
28、PrivateSubCommandButton1_Click()'
DimiRngAsRange
ForEachiRngInSheets
(1).Range("
IfiRng.Value>
=3Then
i=i+1
Sheets
(1).Range("
E"
i).Value=iRng.Value
29、工作表中的窗体按钮禁用后,按钮形状不变,字体不变,从外表上无法看出其已禁用,如何设置属性使其像控件按纽那样明显的禁用?
WithActiveSheet.Buttons
(1)
.Enabled=False
ActiveSheet.Shapes(.Caption).DrawingObject.Font.ColorIndex=15
EndWith
復原的方法
WithActiveSheet.Buttons
(1)
.Enabled=True
ActiveSheet.Shapes(.Caption).DrawingObject.Font.ColorIndex=xlAutomatic
30、PrivateSubWorksheet_SelectionChange(ByValTargetAsRange'
选定A1时要输入密码
IfTarget.Address="
$A$1"
Then
A=InputBox("
请输入密码"
officefans"
IfA=1Then[A1].SelectElse[A2].Select
31、如何将工作薄中的命名单元格成批删除!
DimItemAsName
ForEachItemInActiveWorkbook.Names
Item.Delete
NextItem
32、平时只能看到表1,如要看表2和表3,只能通过表1的链接打开,且表2和表3回到表1后,又不可见。
$A$3"
Then
当点击"
单元格时...
Sheet2.Visible=1
取消隐藏
Sheet2.Activate'
激活
ActiveSheet.Range("
).Select
$A$6"
Sheet3.Visible=1
Sheet3.Activate
33、将a2单元格内容替换为a1内容
ActiveCell.ReplaceWhat:
=[a2],Replacement:
=[a1]
34、如果是要填入名称,则:
Selection.Value=ComboBox1.column
(1)
如果是要填入代码和名称的组合:
Selection.Value=cstr(ComboBox1.column(0))+"
+combobox1.column
(1)
Selection.Value=ComboBox1.Value
'
target.row
代表行号
target.column代表列号
i=target.row
获取行号
j=target.column'
获取列号
35、当激活工作表时,本示例对A1:
A10区域进行排序。
PrivateSubWorksheet_Activate()
Range("
a10"
).SortKey1:
=Range("
),Order:
=xlAscending
36、BeforePrint事件
参阅应用于示例特性在打印指定工作簿(或者其中的任何内容)之前,产生此事件。
PrivateSubWorkbook_BeforePrint(CancelAsBoolean)
Cancel
当事件产生时为False。
如果该事件过程将本参数设为True,则当该过程运行结束之后不打印工作簿。
本示例在打印之前对当前活动工作簿的所有工作表重新计算。
ForEachwkinWorksheets
wk.Calculate
Next
37、Open事件
参阅应用于示例特性打开工作簿时,将产生本事件。
PrivateSubWorkbook_Open()
每次打开工作簿时,本示例都最大化MicrosoftExcel窗口。
Application.WindowState=xlMaximized
38、ActiveSheet属性
参阅应用于示例特性返回一对象,该对象代表活动工作簿中的,或者指定的窗口或工作簿中的活动工作表(最上面的工作表)。
只读。
如果没有活动的工作表,则返回Nothing。
如果未给出对象识别符,本属性返回活动工作簿中的活动工作表。
如果某一工作簿在若干个窗口中出现,那么该工作簿的ActiveSheet属性在不同窗口中可能不同。
本示例显示活动工作表的名称。
Thenameoftheactivesheetis"
ActiveSheet.Name
39、Calculate方法
参阅应用于示例特性计算所有打开的工作簿、工作簿中的一张特定的工作表或者工作表中指定区域的单元格,如下表所示:
要计算依照本示例
所有打开的工作簿Application.Calculate(或只是Calculate)
指定工作表指定工作表
指定区域Worksheets
(1).Rows
(2).Calculate
expression.Calculate
expression
对于Application对象可选,对于Worksheet对象和Range对象必需。
该表达式返回“应用于”列表中的对象之一。
本示例计算Sheet1已用区域中A列、B列和C列的公式。
Worksheets("
Sheet1"
).UsedRange.Columns("
A:
).Calculate
程序的核心是算法问题
40、End属性
参阅应用于示例特性返回一个Range对象,该对象代表包含源区域的区域尾端的单元格。
等同于按键End+向上键、End+向下键、End+向左键或End+向右键。
Range对象,只读。
expression.End(Direction)
必需。
该表达式返回“应用于”列表中的对象之一。
Direction
XlDirection类型,必需。
所要移动的方向。
XlDirection可为XlDirection常量之一。
xlDown
xlToRight
xlToLeft
xlUp
本示例选定包含单元格B4的区域中B列顶端的单元格。
B4"
).End(xlUp).Select
本示例选定包含单元格B4的区域中第4行尾端的单元格。
).End(xlToRight).Select
本示例将选定区域从单元格B4延伸至第四行最后一个包含数据的单元格。
).Activate
Range("
).End(xlToRight)).Select
41、应用于CellFormat和Range对象的Locked属性。
本示例解除对Sheet1中A1:
G37区域单元格的锁定,以便当该工作表受保护时也可对这些单元格进行修改。
).Range("
A1:
G37"
).Locked=False
).Protect
42、Next属性
参阅应用于示例特性返回一个Chart、Range或Worksheet对象,该对象代表下一个工作表或单元格。
如果指定对象为区域,则本属性的作用是仿效Tab,但本属性只是返回下一单元格,并不选定它。
在处于保护状态的工作表中,本属性返回下一个未锁定单元格。
在未保护的工作表中,本属性总是返回紧靠指定单元格右边的单元格。
本示例选定sheet1中下一个未锁定单元格。
如果sheet1未保护,选定的单元格将是紧靠活动单元格右边的单元格。
ActiveCell.Next.Select
43、想通过target来设置(A1:
A10)区域内有改动,就发生此事件。
不知道如何
iftarget.row=1andtarget.column<
=10then
Sub列举菜单项()
Dimr,s,iAsInteger
Fori=1ToCommandBars.Count
ActiveSheet.Cells(r,1)="
CommandBars("
i&
).Name:
CommandBars(i).Name
Fors=1ToCommandBars(i).Controls.Count
ActiveSheet.Cells(r,1)=s&
、"
CommandBars(i).Controls(s).Caption
r=r+1
44、本示例设置MicrosoftExcel每当打开包含链接的文件时,询问用户是否更新链接。
Application.AskToUpdateLinks=True
45、自定义函数
PublicFunctionNow1()
Dimstring1AsString
string1=VBA.Date
Now1=string1
EndFunction
46、复制
Subcopy1()
Sheet2.Range("
C5:
C10"
).CopySheet1.Range("
47、如何统计表中sheet的个数?
msgboxsheets.count
Columns("
G:
G"
48、Selection.EntireColumn.Hidden=True
这样隐藏有个毛病,如何解决?
如果A1:
G1单元格合并的话,就把A:
G列均隐藏了。
).EntireColumn.Hidden=True
49、在VBA中引用excel函数的方法
1).Worksheets("
).Formula="
=$A$4+$A$10"
2).Sheet1.Cells(1,1).Formula="
Sheets(iii).Name&
R1C4"
在宏中用R1C1方式写时表格1的A1中会在写为“=Sheet2!
$D$1”
用这种方式,想用什么函数就用什么函数.
50、选定下(上)一个工作表
sheets(activesheet.index-1).select
sheets(activesheet.index+1).select
51、PrivateSubWorkbook_Open()
ActiveWindow.DisplayWorkbookTabs=False'
取消工作表标签
Application.CommandBars("
Sheet"
).Controls
(1).Enabled=False'
格式_工作表不能重命名
Application.CommandBars.FindControl(ID:
=889).Enabled=False'
右键菜单不能重命名
52、[a65536].End(xlUp’A列从下往上第一个非空的单元格
53、Submacro()
Setrng=Range("
C11:
F13"
)
定义RNG为一个单元格区域
ForEachcelInrng
定义CEL为RN
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VBA 自学 必备 材料
![提示](https://static.bdocx.com/images/bang_tan.gif)