文本框
代码
目录
file_name1
filename
[
filename
]
filename
[
filename
.00
QQ
登录
临时
IfI.Font.ColorIndex=YThen
COLOR=COLOR+I
NextI
''统计红色,输入:=COLOR(B2:B8,3)
''统计蓝色,输入:=COLOR(B2:B8,5)
统计不同颜色的数字的和(自定义函数)
统计不同颜色的数字的和(自定义函数)
ActiveCell.Activate
Application.SendKeys"~"
WithTextBox1
.Left=ActiveCell.Left
.Top=ActiveCell.Top
.Width=ActiveCell.Width
.Height=ActiveCell.Height
n=Range("a65536").End(xlUp).Row
Range("B1")=n
Sub返回A列数据的最大行数()
返回A列数据的最大行数
返回A列数据的最大行数
查找和引用
n=n&rag.Value&Chr(10)
Sub删除A列非数字单元行()
i=[a65536].End(xlUp).Row
Range("A1:A"&i).SpecialCells(xlCellTypeConstants,2).EntireRow.Delete
删除A列非数字单元行
SubMacro1()
Nexti
PrivateSubWorksheet_Activate()
IfTarget.Count<=15Then
IfNotApplication.Intersect(Target,Range("D6:D20"))IsNothingThen
ForEachRngInSelection
WithRng
ActiveCell.Offset(1,2).Select''向下移动1行,向右移动2列
DimRngAsRange
在指定区域选择单元时添加/取消"√"(工作表代码)
在指定区域选择单元时添加/取消"√"(工作表代码)
在指定颜色区域选择单元时添加/取消"√"(工作表代码)
DimmyrgAsRange
ForEachmyrgInTarget
全部显示指定表的自动筛选
强行合并单元
Else
b=Range(a).NoteText
Cells(1,6)=b
在F1单元显示光标位置批注内容的代码
按当前单元文本选择打开指定文件单元
ForEachShtInSheets
Cells(k+1,1)=Sht.Name''指定写入的行和列
k=k+1
Sub将全部表名称写到A列()
ActiveSheet.ScrollArea="B8:G15"
Sub指定允许编辑区域()
Application.SendKeys("{ENTER}{ENTER}%fx")
ActiveWorkbook.Save
IfUCase(Sheets(j).Name)>UCase(Sheets(i).Name)Then
按aa工作表A列的内容排列工作表标签顺序
Sub指定单元的行高和列宽与A1单元相同()
指定单元的行高和列宽与A1单元相同
[c2]=Range("A1").ColumnWidth''列宽
[b2]=Range("A1").RowHeight''行高
Selection.FormulaR1C1="√"
Selection.FormulaR1C1=ThisWorkbook.Name
Sub区域录入当前数字日期()
Sub区域录入当前日期和时间()
''Sheets(1).Hyperlinks.AddCells(i-1,1),"#"&Sheets(i).Name&"!A1"''添加超链接
PrivateSubWorksheet_SelectionChange(ByValTAsRange)
Fori=0To2
IfNotApplication.Intersect(T,a(i))IsNothingThen
[a1].Select:ExitFor
EndIf
Next
Sub有条件删除当前行()
Sub返回当前工作簿中工作表数量()
t=Application.Sheets.Count
MsgBoxt
返回当前工作簿中工作表数量
Sub以活动工作表名称另存文件到Excel当前默认目录()
以活动工作表名称另存文件到Excel当前默认目录
ActiveWorkbook.SaveAsFilename:=ThisWorkbook.Path&"\"&ActiveSheet.Name&".xls"
Sub取消选定区域的公式只保留值()
取消选定区域的公式只保留值(假空转真空)
?''??Sheets("数据归并集中").Select''指定工作表
?''??Columns("Q:R").Select''指定范围
Range("D1").Select
Sub为当前选定的多单元插入指定名称()
Sub根据A1内容选择执行宏()
SelectCaseSheet1.[A1]
Case"A"
宏1
Case"B"
宏2
Case"C"
宏3
CaseElse
EndSelect
另存所有工作表为工作簿
根据A1内容选择执行宏
ActiveWorkbook.Names.AddName:="临时",RefersTo:=Selection''或者换用这行代码也可以
Sub奇偶页分别打印()
奇偶页分别打印
Dimi%,Ps%
Ps=ExecuteExcel4Macro("GET.DOCUMENT(50)")''总页数
MsgBox"现在打印奇数页,按确定开始."
Fori=1ToPsStep2
ActiveSheet.PrintOutfrom:=i,To:=i
MsgBox[b:b].SpecialCells(2,1).Row
Sub返回第一个数值行号()
返回第一个数值行号
返回第一个数值行号
Sub返回连续数值单元的数量()
MsgBox[b:b].SpecialCells(2,1).Rows.Count
返回连续数值单元的数量
返回连续数值单元的数量
IfNotApplication.Intersect([A1:Y100],Target)IsNothingThen
oldvalue=Val(Target.Value)
inputvalue=InputBox("请输入数量,按ENTER键确认!","数值累加器")
Target.Value=oldvalue+inputvalue
指定区域单元双击数据累加(工作表代码)
指定区域单元双击数据累加(工作表代码)
Range("A1").Select''光标移至A1。
MsgBox"这就是合并后的表,请命名!"
合并各工作表内容
合并各工作表内容
SetmySpk=Application.Speech
myStr=Replace(Replace(Range("A1:A"&i).Address,"$",""),":","到")
WithmySpk
ForEachtRngInRange("A1:A"&i)
UseRow=Cells.SpecialCells(xlCellTypeLastCell).Row''SpecialCells(xlCellTypeLastCell)表示已用区域最后一个单元格
IfActiveCell.Row>UseRowThen
PrivateSubWorkbook_Open()
Sheets(str1).Select
Sheets(str1).Moveafter:=Sheets(I)
I=I+1
Sheets("aa").Select
Loop
按aa工作表A列的内容排列工作表标签顺序
Sub按aa工作表A列的内容排列工作表标签顺序()
Sub工作表标签排序()
DimiAsLong,jAsLong,numsAsLong,msgAsLong
ActiveSheet.Name=nm
以A1单元文本作表名插入工作表
以A1单元内容批量插入批注
Sub以A1单元内容批量插入批注()
DimrAsRange
Application.ScreenUpdating=True
ForEachmycellInSelection
Sub禁用保存()
?????IfAsc(Mid(rg,i,1))>0Thenrg.Characters(i).Font.ColorIndex=3
?Next
Sub隐藏显示E列空值行()
Selection.AutoFilterField:=1
Application.DisplayAlerts=False''不出现对话框,按对话框默认选择
Range("a3:a4").Merge
拷贝A1公式和格式到A2
宏管理
DimraddressAsString,taddressAsString
raddress=Selection.Address
.AddType:=xlValidateList,AlertStyle:=xlValidAlertStop,Operator:=_
.IgnoreBlank=False
.InCellDropdown=False
.InputTitle=""
.ErrorTitle=""
.InputMessage=""
.IMEMode=xlIMEModeNoControl
.ShowInput=True
.ShowError=True
xlBetween,Formula1:="bigsun010@sina.com"
.ErrorMessage="要奋斗就会有牺牲,死人的事是经常发生的。"
Sub加数据有效限制()
Application.CommandBars("Web").Visible=False
Application.CommandBars("我的工具").Visible=False
Sub重排窗口()
重排窗口
Sub选择打开文件单元()
Dima
a=ActiveCell.Value
Range(a).Worksheet.Activate
Range(a).Select
Application.MoveAfterReturnDirection=xlToRight
Application.MoveAfterReturnDirection=xlDown
Sub录入光标向右()
Sub录入光标向下()
.AddType:=xlValidateInputOnly,AlertStyle:=xlValidAlertStop,Operator_
:=xlBetween
.ErrorMessage=""
Sub取消数据有效限制()
Sub取消选定锁定单元()
k=1
Columns("A:B").AdvancedFilterAction:=xlFilterCopy,CriteriaRange:=Range(_
"G1:G2"),CopyToRange:=Range("D1"),Unique:=False
Sub定位()
SubMacro2()
Sub批量插入文本()
s="文本内容"&s
DimsAsString
DimFullNameAsString,rngAsRange
ForEachrngInRange("a1").CurrentRegion
Ifrng.Column=Range("a1").CurrentRegion.Columns.CountThen
s=""
OpenFullNameForOutputAs#1''以读写方式打开文件,每次写内容都会覆盖原先的内容
Close#1''关闭文件
s=s&IIf(s="","","|")&rng.Value
Print#1,s&"|"''把数据写到文本文件里
''参考帮助,fullname为文件全名
Sub高级筛选()
Columns("D:E").Select
Selection.Clear
PrivateSubWorksheet_Change(ByValMAsRange)
y=Int(Round(100Abs(M))/100)
j=Round(100Abs(M)+0.00001)-y100
f=(j/10-Int(j/10))10
arr2(i,1)=x
Nextx
Range("D1").Resize(i,1)=arr2
Sub将指定范围的数据排列到D列()
Sheet1.[A1:A10].ClearContents
Sub清除单元数值()
IfCells(i,1)=Sheets(j).NameThen
ExitFor
Sheets.Add(after:=Sheets(Sheets.Count)).Name=Cells(i,1)
按A列数据批量创建新表(控件按钮代码)
按A列数据批量创建新表(控件按钮代码)
DimnAsInteger
???Forn=1ToSheets.Count
Range("A1:C8")=ClearContents
Sub清除指定区域数值()
清除指定区域数值
Sheet1.[A1:A10]=""
PrivateSubWorkbook_Open()
打开文件时执行指定宏(工作簿代码)
关闭文件时执行指定宏(工作簿代码)
关闭文件时执行指定宏(工作簿代码)
Sheets("Sheet3").Visible=False
ActiveWorkbook.ProtectStructure:=True,Windows:=False
关闭文件时自动隐藏指定工作表(ThisWorkbook)
PrivateSubCommandButton1_Click()
Fori=1To[b65536].End(xlUp).Row
Forj=i+1To[b65536].End(xlUp).Row
IfRange("a"&j)=""Then
Sub定义指定单元内容为页眉/页脚()
定义指定单元内容为页眉/页脚
定义指定单元内容为页眉/页脚
.CenterHeader=BBB''定义页眉
返回指定单元的行高和列宽
Columns("A:F").ColumnWidth=10''指定列宽
.WrapText=Selection.WrapText
.Orientation=Selection.Orientation
.AddIndent=Selection.AddIndent
.MergeCells=Selection.MergeCells
.Font.Name=Selection.Font.Name
.Font.FontStyle=Selection.Font.FontStyle
.Font.Size=Selection.Font.Size
.Font.Strikethrough=Selection.Font.Strikethrough
.Font.Subscript=Selection.Font.Subscript
.Font.Underline=Selection.Font.Underline
n=Cells.Find("",,,,1,2).Row
全选选定范围内小于0的单元
固定区域单元分类变色
单元格录入数据时运行宏的代码
焦点到A列时运行宏的代码
根据B列最后数据快速合并A列单元格的控件代码
链接
▲
Sub循环()
DimiAsLong
DimtimesAsLong
''times代表循环次数,执行前把times赋值即可(不可小于1,不可大于2147483647)
Fori=1Totimes
Nexti
为指定工作表设置滚动范围(工作簿代码)
Subb()
Dimi%,j%
Cells(1,1)=10
Setaa=a.Cells
Else
Setaa=Union(aa,a.Cells)
aa.Select
Sub文本定位()
IfaLike"合计"Then
Selection=Selection+2
Sub当前单元加2()
当前单元加2
Sub建立工作表文本目录()
Sheets.Addbefore:=Sheets(1)
Sheets(1).Name="目录"
Fori=2ToSheets.Count
Cells(i-1,1)=Sheets(i).Name
Sub对第一张工作表的指定区域进行排序()
.Range("a2:a100").SortKey1:=.Range("a1")
Sub显示指定工作表的打印预览()
显示指定工作表的打印预览
显示指定工作表的打印预览
用单元格A1的内容作为文件名另存当前工作簿
Selection.Characters.Text="问题:"&n
WithSelection.Characters(Start:=1,Length:=3).Font
Call宏2
Cancel=True
Call宏4
Call宏3
Call宏3
IfRange("$A$1")="关闭"ThenExitSub
窗口
Sub被指定单元限制执行宏()
被指定单元内容限制执行宏
IfNotApplication.Intersect(Target,Range("A4:A9","C4:C9"))IsNothingThenCall打开隐藏表
IfNotApplication.Intersect(Target,Range("A4:A9","C4:C9"))IsNothingThenCall打开隐藏表
双击单元执行宏(工作表代码)
双击单元执行宏(工作表代码)
双击指定区域单元执行宏(工作表代码)
进入单元执行宏(工作表代码)
进入指定区域单元执行宏(工作表代码)
双击指定区域单元执行宏(工作表代码)
进入单元执行宏(工作表代码)
进入指定区域单元执行宏(工作表代码)
Worksheets(1).Range("B2").Value="北京"&(--(Mid(Worksheets(1).Range("B2"),3,100))+1)
Sub混合文本的编号()
混合文本的编号
混合文本的编号
''录制代码ActiveWorkbook.Names.AddName:="临时",RefersToR1C1:="=Sheet1!R1C1"''插入名称准备返回使用
''修改后的代码ActiveWorkbook.names.AddName:="临时",RefersToR1C1:="="+ActiveSheet.Name+"!R1C1"''插入名称准备返回使用
''临时宏中原录制代码ActiveWorkbook.Names.AddName:="临时",RefersToR1C1:="=Sheet1!R1C1"''插入名称准备返回使用
''临时宏经修改后的代码ActiveWorkbook.names.AddName:="临时",RefersToR1C1:="="+ActiveSheet.Name+"!R1C1"''插入名称准备返回使用
IfSheet1.FilterMode=TrueThen
Sheet1.ShowAllData
全部显示指定表的自动筛选
当前单元返回按钮名称(控件按钮代码)
当前单元内容返回到按钮名称(控件按钮代码)
CommandButton1.Caption=ActiveCell
控件
取消指定行或列的隐藏
取消指定行或列的隐藏
Sub插入透明批注()
Selection.AddComment
.Font.ColorIndex=Selection.Font.ColorIndex
取消数据有效限制
另存指定文件名
按A列数据批量修改表名称
更新透视表数据项
光标定位到名称指定位置
建立工作表文本目录
按当前单元文本定位
工作表标签排序
根据A1单元内容返回C1数值
Sub返回光标所在行号()
返回光标所在行号
返回光标所在行号
当指定日期(每月10日)打开文件执行宏
当指定日期(每月10日)打开文件执行宏
If.Caption="宏1"Then
Call宏1
.Caption="宏2"
ExitSub
If.Caption="宏2"Then
Call宏2
.Caption="宏3"
If.Caption="宏3"Then
Call宏3
.Caption="宏1"
在多个宏中依次循环执行一个(控件按钮代码)
在多个宏中依次循环执行一个(控件按钮代码)
StaticRunMacroAsInteger
SelectCaseRunMacro
宏1
RunMacro=1
Case1
宏2
RunMacro=2
Case2
宏3
RunMacro=0
EndSelect
taddress=ActiveSheet.UsedRange.Address
WithSheets.Add
.Range(taddress)=0
.Range(raddress)="=0"
Workbooks("临时表").Sheets("表2").Range("A2").PasteSpecial
Workbooks("临时表").Sheets("表1").Range("A1").Copy
Sub自动打印多工作表第一页()
DimshAsInteger
Dimx
Dimy
Dimsy
Dimsyz
x=InputBox("请输入起始工作表名字:")
Sub全部清除当前选择区域()
全部清除当前选择区域
Selection.Clear
''Range("A1:B10").Clear''全部清除指定区域
根据A1单元文本隐藏/显示按钮(控件按钮代码)
DimshAsWorksheet
DimshtAsWorksheet,nAsInteger,iFlagAsBoolean
DimShtName()AsString
n=ActiveWindow.SelectedSheets.Count
ReDimShtName(1Ton)
n=1
ForEachshtInActiveWindow.SelectedSheets
ShtName(n)=sht.Name
n=n+1
Application.DisplayAlerts=False
ForEachshtInSheets
iFlag=False
Fori=1Ton-1
i=Split(ActiveCell.Address,"$")(2)
Ifi>1Then
Rows(i).Cut
Rows(i-1).InsertShift:=xlDown
EndIf
Sub光标所在行上移一行()
光标所在行上移一行
Sub返回光标选择区域的行数和列数()
x=Selection.Rows.Count
y=Selection.Columns.Count
Range("A1")=x
Range("A2")=y
返回光标选择区域的行数和列数
返回光标选择区域的行数和列数
b=IIf(j>9.5,Application.Text(Int(j/10),"[DBNum2]")&"角",IIf(y<1,"",IIf(f>1,"零","")))
c=IIf(f<1,"整",Application.Text(Round(f,0),"[DBNum2]")&"分")
M=IIf(Abs(M)<0.005,"",IIf(M<0,"负"&A&b&c,A&b&c))
合并指定目录中所有文件中相同格式工作表的数据
Sub判断指定文件是否已经打开()
Forx=1ToWorkbooks.Count
MsgBox"文件已打开"
MsgBox"文件未打开"
IfWorkbooks(x).Name="函数.xls"Then''文件名称
判断指定文件是否已经打开
MsgBox"现在打印偶数页,按确定开始."
Fori=2ToPsStep2
Cells.EntireRow.Hidden=False''显示所有行
Fori=2ToUseRow
IfCells(i,AC).Interior.ColorIndex<>ActiveCell.Interior.ColorIndexThen
Cells(i,AC).EntireRow.Hidden=True''如果2至已用行之单元格的有列之颜色不等于当前单元格颜色则隐藏整行
EndIf
Next
Sub按颜色筛选()''思路就是:其它背景色之行全部隐藏
If[J1]=2Or[K1]="筛选"Then
If[b1].Value="A"Then
ActiveWorkbook.SaveAsipath&sht.Name&".xls"''(工作表名称为文件名)
''ActiveWorkbook.SaveAsipath&sht.Name&Trim(sht.[d15])&".xls"''(文件名称&D15单元内容)
''ActiveWorkbook.SaveAsipath&Trim(sht.[d15])&".xls"''(文件名称为D15单元内容)
Application.CommandBars("TaskPane").Visible=False
Sub清除剪贴板()
清除剪贴板
Selection.Value=Selection.Formula
Sub处理导入的显示为科学计数法样式的身份证号()
''帖子地址:http://club.excelhome.net/dispbbs.asp?boardid=2&replyid=875804&id=245219&page=1&skin=0&Star=2
MsgBoxn
Sub包含数据的最大行数()
工作表中包含数据的最大行数
工作表中包含数据的最大行数
Sheet1.ScrollArea="A1:M30"
为指定工作表设置滚动范围(工作簿代码)
Sub当前行下插入1行()
Selection.Offset(1,0).Insert
当前行下插入1行
当前行下插入1行
工作表
Sub取消隐藏行()
Rows("3:5").Select
Sub自动筛选第2列值为A的行()
[a1].AutoFilter2,"a"
自动筛选第2列值为A的行
自动筛选第2列值为A的行
Sub取消自动筛选()
ActiveSheet.AutoFilterMode=False
EndSub
取消自动筛选()
取消自动筛选()
Sub在第一个表前插入多工作表()
ForI=1To50
Sheets.Add.Name="新表"&I
在第一个表前插入多工作表
在第一个表前插入多工作表
EndSub
宏文件集
打开全部隐藏工作表
循环宏
批量插入地址批注
批量插入统一批注
Sub以A1单元文本作表名插入工作表()
DimnmAsString
nm=[a1]
Sheets.Add
Range("A1")=Application.Pi()
返回圆周率π
返回圆周率π
ForEachrngInRange("d6:i18")
IfaLike〈0Then
Sub定位数据及区域以上的空值()
定位数据及区域以上的空值
Sub调整选中对象中的文字()
''文字居中、自动调整大小
Application.ScreenUpdating=True
Sub强行合并单元()
[a:a].NumberFormat="yyyy.mm.dd"
代码目录
Application.AddCustomListListArray:=Array("优","良","中","差","劣")
Sub添加自定义序列()
添加自定义序列
添加自定义序列
Sub返回总页码()
Sheet1.Activate
a=ExecuteExcel4Macro("Get.Document(50)")
Range("A1")=a
返回总页码
返回总页码
ActiveSheet.Copy
Sub将本工作表单独另存文件到Excel当前默认目录()
将本工作表单独另存文件到Excel当前默认目录
ActiveWorkbook.SaveAsFilename:=ActiveSheet.Name&".xls"
ActiveWorkbook.SaveAsFilename:=ActiveSheet.Name&".xls",FileFormat:=_
xlNormal,Password:="",WriteResPassword:="",ReadOnlyRecommended:=False_
,CreateBackup:=False
IfFoundCellIsNothingThenExitDo
SetAllCells=Union(FoundCell,AllCells)
i=Worksheets("数据库").Range("b60000").End(xlUp).Row
ForEachhInWorksheets("临时").Hyperlinks
Worksheets("数据库").Cells(i+1,2)=h.TextToDisplay
设置单元区域格式
设置单元区域格式
Sub设置单元区域格式()
Sheet2.[B:B].NumberFormatLocal="yyyy-m-d"
Sheet2.[C:C].NumberFormatLocal="G/通用格式"
Sub将A1至C1的内容写到D15单元的批注中()
合并A1至C1的内容写到D15单元的批注中
合并A1至C1的内容写到D15单元的批注中
MsgBox"请在要筛选的区域选择一个有颜色之单元格!",vbExclamation,"错误"
AC=ActiveCell.Column
IfRange("$A$1")="关闭"ThenExitSub
SelectCaseTarget.Address
Case"$A$4"
Call宏1
Cancel=True
Case"$B$4"
Case"$C$4"
Case"$E$4"
EndSelect
''以单元格进入代替按钮对象调用宏
Case"$A$5"''单元地址(Target.Address),或命名单元名字(Target.Name)
Call宏2
Case"$C$5"
Case"$B$5"
Call宏1
IfNottRngIsNothingThen.SpeaktRng,,,False
Next
IfErr.Number<>0Then
Application.Speech.Speak"",,,True
Sub朗读固定语句()
Sub朗读A列()
.Speak"_",,,False
关闭文件时自动隐藏指定工作表(ThisWorkbook)
打开文件时提示指定工作表是保护状态(ThisWorkbook)
插入10行
全选固定范围内小于0的单元
Sub当前单元录入计算机用户名()
Selection=Environ("Username")
Sheet10.ProtectPassword:="123"
Sub为指定工作表加指定密码保护表()
为指定工作表加指定密码保护表
Sub拷贝A1公式到A2()
Sub插入数值条件格式()
Selection.FormatConditions.Delete
为当前选定的多单元插入指定名称
将全部工作表名称写到A列
Selection.Name="临时"
IfErr.Number<>0Then.Speak"_",,,True:ExitSub
朗读朗读A列,按ESC键中止
朗读朗读A列,按ESC键中止
IfInputBox("请输入密码:")<>"123"Then''密码是123
ExitSub
执行前需要验证密码的宏(控件按钮代码)
Sub删除超链接()
Sub将B列数据添加超链接到K列()
返回表中各非空单元区域地址(行搜索)
返回表中各非空单元区域地址(行搜索)
Sub返回表中各非空单元区域地址()
Sub清空单元区域()
Range("A1:B10,A15:B25").ClearContents
IfMsgBox("是否真的要清空数据?清除后将无法恢复",1+vbokNo)=vbOKThen
提示并清空单元区域
提示并清空单元区域
Sub区域录入当前日期()
不连续区域录入当前文件名
不连续区域录入对勾
Range("a"&i&":a"&j).Merge
Else
ExitFor
Nextj
根据B列最后数据快速合并A列单元格的控件代码
Dimarr1,arr2,i%,x
ForEachragInSelection
ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal,ActiveCell.Left+ActiveCell.Width,ActiveCell.Top+ActiveCell.Height,250#,100).Select
ForEachwsInActiveWorkbook.Worksheets
指定行高和列宽
清除指定区域数值
在F1单元显示光标位置批注内容的代码
回车光标向右
回车光标向下
当前文件另存到指定目录
将所选区域文本插入新建文本框
批量插入地址批注
批量插入统一批注
以A1单元内容批量插入批注
不连续区域插入当前文件名和表名及地址
不连续区域录入当前单元地址
连续区域录入当前单元地址
返回当前单元地址
不连续区域录入当前日期
不连续区域录入当前数字日期
不连续区域录入当前日期和时间
不连续区域录入对勾
不连续区域录入当前文件名
不连续区域添加文本
不连续区域插入文本
从指定位置向下同时录入多单元指定内容
被指定单元内容限制执行宏
Application.CommandBars("File").Controls(5).Enabled=False
Sub启用保存()
Application.CommandBars("File").Controls(4).Enabled=True
Application.CommandBars("File").Controls(5).Enabled=True
[禁用/启用]保存和另存的代码
[禁用/启用]保存和另存的代码
将全部工作表名称写到A列
为当前选定的多单元插入指定名称
按A列数据批量修改表名称
清除剪贴板
批量清除软回车
类别
Selection.FormatConditions.AddType:=xlCellValue,Operator:=xlLess,_
Formula1:="55"
Selection.FormatConditions(2).Interior.ColorIndex=39
Formula1:="60"
Sheets(i).Name=Cells(i+1,1).Text
Sub按A列数据批量修改表名称()
xlByRows,MatchCase:=False,SearchFormat:=False,ReplaceFormat:=False
批量清除软回车
Sub批量清除软回车()
当前文件另存到指定目录
Sub另存指定文件名()
ActiveWorkbook.SaveAsFilename:="E:\信件\"&ActiveWorkbook.Name
Sub当前激活文件另存到指定目录()
ActiveWorkbook.SaveAsThisWorkbook.Path&"\别名.xls"
[d:d]=[a:a].Value
''Range("数据区").Select或者
''Sheet1.Range("数据区").Select或者
Sub选择名称定义的数据区()
选择名称定义的数据区
[数据区].Select''插入名称要使用INDIRECT函数
EndSub
arr1=Range("A1:C3")
ReDimarr2(1ToUBound(arr1,1)UBound(arr1,2),1To1)
ForEachxInApplication.Transpose(arr1)
i=i+1
Application.GotoRange(Evaluate("名称"))
Sub在当前选区有条件替换数值为文本()
Ifr.Value>18Andr.Value<29.5Thenr.Value="Y"
???SetMy=Worksheets("工作表名")
Selection.EntireRow.Select
Sub选择光标或选区所在行()
选择光标或选区所在行
PrivateSubWorkbook_BeforeClose(CancelAsBoolean)
Sheets("Sheet2").Visible=False
rng.Interior.ColorIndex=3''文本、假空和大于0的单元变红底色
Worksheets("数据库").Cells(i+1,3)=h.Address
Range(Worksheets("数据库").Cells(i+1,3),Worksheets("数据库").Cells(i+1,3)).Hyperlinks.AddAnchor:=Cells(i+1,3),Address:=Cells(i+1,3)
i=i+1
If.Caption="保护工作表"Then
Call保护工作表
.Caption="取消工作表保护"
If.Caption="取消工作表保护"Then
Call取消工作表保护
.Caption="保护工作表"
在两个宏中依次循环执行一个并相应修改按钮名称(控件按钮代码)
在三个宏中依次循环执行一个并相应修改按钮名称(控件按钮代码)
在三个宏中依次循环执行一个并相应修改按钮名称(控件按钮代码)
ForEachshInWorkbooks("2.xls").Worksheets
Nextsh
Worksheets("目录").Calculate
DoWhileCells(I,1).Value<>""
str1=Trim(Cells(I,1).Value)
Sheets("sheet1").Range("A:A,J:J").CopyRange("d1")
Sub拷贝指定表不相邻多列数据到新位置()
延时15秒执行重排窗口宏
ForEachmycellInSelection
Next
Selection.FormulaR1C1=Format(Now(),"yyyy-m-d")
Selection.FormulaR1C1=Format(Now(),"yyyy-m-dh:mm:ss")
Selection.FormulaR1C1=Format(Now(),"yyyymmdd")
不连续区域录入当前日期和时间
不连续区域录入当前数字日期
不连续区域录入当前日期
Sub连续区域录入当前单元地址()
不连续区域录入当前单元地址
连续区域录入当前单元地址
不连续区域插入当前文件名和表名及地址
以A1单元文本作表名插入工作表
''见http://club.excelhome.net/dispbbs.asp?boardid=1&replyid=900613&id=249319&page=1&skin=0&Star=2帖11楼eq800的代码
ActiveSheet.ScrollArea=""
Sub解除允许编辑区域限制()
.Calculation=xlAutomatic
Sub手动重算()
Sub自动重算()
手动重算
自动重算
BBB=Sheets("表1").Range("A2")
WithActiveSheet.PageSetup
Sheet1.Columns("A:A").SpecialCells(2,23).SpecialCells(12).CopySheet2.[A1]
将Sheet1的A列的非空值写到Sheet2的A列
Ifrng=0Then
rng.Interior.ColorIndex=2''空值和等于0的单元变白底色
Sub单元分类变色()
固定区域单元分类变色
yvhf=yvhf&rng.Address&","
SubA列半角内容变红()
PrivateSubWorksheet_Change(ByValTargetAsRange)
单元格录入数据时运行宏的代码
PrivateSubWorksheet_SelectionChange(ByValTargetAsRange)
???IfTarget.Column=1Then
宏名
???EndIf
焦点到A列时运行宏的代码
插入10行
全选选定范围内小于0的单元
A列半角内容变红
将指定范围的数据排列到D列
Sub将Sheet1的A列的非空值写到Sheet2的A列()
Range("A1").Select''取消单元格被全选状态。
x=ActiveCell.Row
Range("A1")=x
Sub返回光标所在行数()
返回光标所在行数
返回光标所在行数
''.CenterFooter=BBB''定义页脚
当前选区的行列数
Case0
重排窗口''要执行的宏名称
Ifmyrg.Interior.ColorIndex=37Thenmyrg=IIf(myrg<>"√","√","")
隐藏指定工作表
Sub保存并退出Excel()
单元反选
Sub单元反选()
Sheets("用户名密码").Visible=xlVeryHidden
深度隐藏指定工作表
Sub深度隐藏指定工作表()
Sub隐藏指定工作表()
Sheets("用户名密码").Visible=false
ActiveWindow.SelectedSheets.Visible=false
隐藏当前工作表
Sub隐藏当前工作表()
Selection.InsertShift:=xlDown
Rows(ActiveCell.Row&":"&ActiveCell.Row+9).Select
Sub插入10行()
DimrngAsRange
Dimyvhf
ForEachrngInRange("d6:i18")
Ifrng<0Then
yvhf=yvhf&rng.Address&","
Range(Left(yvhf,Len(yvhf)-1)).Select
ForEachrngInSelection
Sub全选固定范围内小于0的单元()
全选固定范围内小于0的单元
Sub全选选定范围内小于0的单元()
rng.Interior.ColorIndex=4''小于0的单元变绿底色
Ifrng>0Then
ActiveWindow.ScrollRow=5
对第一张工作表的指定区域进行排序
对第一张工作表的指定区域进行排序
指定选择单元区域弹出消息
指定选择单元区域弹出消息
将代码复制到模块后单元公式:=zhyz(单元格)
复制单元数值
复制单元数值
Sub复制数值()
s=Workbooks("book1").Sheets("Sheet1").Range("A1:A2")
Workbooks("book2").Sheets("Sheet1").Range("A1:A2")=s
PrivateSubWorksheet_SelectionChange(ByValTargetAsRange)
Sheet1.Range("A1:B3").Value=Sheet2.Range("A1:B3").Value
单元区域引用(工作表代码)
单元区域引用(工作表代码)
IfNotApplication.Intersect([a1:e10],Target)IsNothingThen
ThisWorkbook.SaveAsThisWorkbook.Path&"\"&Format(Now(),"yyyy"&"年"&"mm"&"月"&"dd"&"日"&"h"&"时"&"mm"&"分"&"ss"&"秒")&".xls"
MsgBox"对不起,您没有使用该宏的权限,按确定键后退出!"
Sub执行前需要验证密码的宏()
重排窗口''要执行的宏代码或宏名称
MsgBox"密码错误,按确定退出!",64,"提示"
Nextj
Application.OnTime("11:45:00"),"提示1"''宏名字
Application.OnTime("12:00:00"),"提示2"''宏名字
SetSelShts=ActiveWindow.SelectedSheets
ForEachShtInSelShts
Call临时
在当前工作组各表中分别执行指定宏
在当前工作组各表中分别执行指定宏
''其中指定宏代码一定要避免执行工作表的Select方法
''冰山上的来客解答http://club.excelhome.net/dispbbs.asp?boardid=2&id=251426
DimSelShtsAsSheets
DimShtAsWorksheet
PrivateSubWorkbook_SheetSelectionChange(ByValShAsObject,ByValTargetAsRange)
Call宏名
Fori=2ToThisWorkbook.Sheets.Count
Sheets(i).Visible=xlSheetVeryHidden
除最左边工作表外深度隐藏所有表
Sub合并各工作表内容()
sp=InputBox("各表内容之间,间隔几行?不输则默认为0")
Ifsp=""Then
sp=0
st=InputBox("各表从第几行开始合并?不输则默认为2")
Ifst=""Then
st=2
Sheets(1).Select
Ifst>1Then
Sheets(2).Select
Rows("1:"&CStr(st-1)).Select
Sheets(1).Select
Range("A1").Select
ActiveSheet.Paste
y=st-1
Target=Val(Target)+1
在指定区域选择单元时数值加1(工作表代码)
DimUseRow,AC,i''首先选择一个有颜色之单元格,然后动行宏,其它颜色所在行隐藏
Application.Run"宏1"
ElseIf[b1].Value="B"Then
''Selection=Workbooks("临时表").Sheets("表2").Range("A1")调用指定地址内容
IfUCase(Sheets(j).Name) Sheets(j).MoveBefore:=Sheets(i)
EndIf
Else''Sortdescending
Fori=1Tonums
IfSheets(i).Name<>"录入"Then
Sheets(i).Visible=False
打开工作簿自动隐藏录入表以外的其他表
Sub引用指定位置单元内容为部分文件名另存文件()
ActiveWorkbook.SaveAsFilename:="E:\信件\"&"解答"&Range("sheet1!a1")&"郎雀.xls"
将全部工作表的A1单元作为单击按钮(工作簿代码)
闹钟——到指定时间执行宏(工作簿代码)
闹钟——到指定时间执行宏(工作簿代码)
朗读固定语句,请按ESC键终止
朗读固定语句,请按ESC键终止
Subauto_open()
IfDay(Date)=10Then
Setr=Target
r.Comment.Visible=True
显示光标所在单元的批注的代码
Cells(l,1)=aa
Loop
Selection.EntireColumn.Select
EndSubSub
单元格录入1位字符就跳转(工作表代码)
单元格录入1位字符就跳转(工作表代码)
Sub指定行高和列宽()
指定行高和列宽
Range("A1:F1").ColumnWidth=Range("A1").ColumnWidth''指定列宽
Range("A2:A10").RowHeight=Range("A1").RowHeight''指定行高
在当前选区有条件替换数值为文本
Sub另存所有工作表为工作簿()
DimshtAsWorksheet
ipath=ThisWorkbook.Path&"\"
ForEachshtInSheets
sht.Copy
IfRange("A1")="A"Then
Range("C1").FormulaR1C1="结算"
ElseIfRange("A1")="B"Then
Selection="=ADDRESS(ROW(),COLUMN(),4,1)"
Selection.Copy
Selection.PasteSpecialPaste:=xlPasteValues,Operation:=xlNone,SkipBlanks_
:=False,Transpose:=False
DimFirstCellAsRange,FoundCellAsRange
DimAllCellsAsRange
MsgBox"你选择了$A$1:$B$2单元"
选择单元区域触发事件(工作表代码)
ForEachRngInRange("B3:B"&[B65536].End(xlUp).Row)
ActiveSheet.Hyperlinks.AddAnchor:=Rng,Address:="",SubAddress:=Sheet1.Range("K"&Rng.Row).Address,ScreenTip:="点击转到:"&Sheet1.Name&"K"&Rng.Row
将B列数据添加超链接到K列
将B列数据添加超链接到K列
删除B列数据的超链接
删除B列数据的超链接
Sheet1.Range(Rng.Address).Hyperlinks.Delete
ActiveCell=CommandButton1.Caption
http://club.excelhome.net/dispbbs.asp?boardid=4&id=239820
EH帖子地址
单元反选
Rows(a&":"&b).Select
Sub选择2至4行()
PrivateSubWorkbook_Open()
Dimi
Cells.Interior.ColorIndex=xlNone
If[A1]=2Or[B1]="删除"Then
Selection.DeleteShift:=xlUp
Sub批量录入当前文件名()
DimnAsLong
n=[a65536].End(xlUp).Row
[f1].Resize(n,1)=[a1].Resize(n,1).Value
[g1].Resize(n,1)="=rand()"
[f:g].Sort[g1]
Sub以本工作表名称另存文件到当前目录()
以本工作表名称另存文件到当前目录
Dims%,RngAsRange
OnErrorResumeNext
Sheets("目录").Activate
IfErr=0Then
Sheets("目录").UsedRange.Delete
Sheets.Add
ActiveSheet.Name="目录"
Fori=1ToSheets.Count
IfSheets(i).Name<>"目录"Then
s=s+1
SetRng=Sheets("目录").Cells(((s-1)Mod20)+1,(s-1)\20+1+1)
Rng=Format(s,"0")&"."&Sheets(i).Name
.Size=12
将所选区域文本插入新建文本框
Sub将所选区域文本插入新建文本框()
Sub录制宏时调用停止录制工具栏()
times=Application.WorksheetFunction.CountIf(Sheet1.Range("a:a"),"分页")
Sub插入分页符()
Cells.Find(What:="分页",After:=ActiveCell,LookIn:=xlValues,LookAt:=_
xlPart,SearchOrder:=xlByRows,SearchDirection:=xlNext,MatchCase:=False)_
.Activate
ActiveWindow.SelectedSheets.HPageBreaks.AddBefore:=ActiveCell
Sub取消原分页()
Cells.Select
ActiveSheet.ResetAllPageBreaks
查找A列文本循环插入分页符
查找A列文本循环插入分页符
Call插入分页符
Sub光标定位到指定工作表A列最后数据行下一单元()
a=Sheets("数据库").[a65536].End(xlUp).Row
Sheets("数据库").Select
Range("A"&a+1).Select
光标定位到指定工作表A列最后数据行下一单元
光标定位到指定工作表A列最后数据行下一单元
''Columns(1).ClearContents''清除A列内容
Fori=1To20
Range("a"&i)=i
重排窗口
IfNotApplication.Intersect(Target,[B3:B4])IsNothingThen
当修改指定单元内容时自动执行宏(工作表代码)
清除A列再插入序号
Sub清除A列再插入序号()
Sub返回指定单元的行高和列宽()
Dimr%,c%
r=[a1].RowHeight
c=[a1].ColumnWidth
[b2]=r''行高
[c2]=c''列宽
Sub分离A列中的超链接到指定表的B和C列()
指定单元显示光标位置内容(工作表代码)
指定单元显示光标位置内容(工作表代码)
Sheets(1).Range("A1")=Selection
Sub返回非空单元数量()
返回非空单元数量
返回非空单元数量
返回A列非空单元数量
返回A列非空单元数量
Sub复制当前工作簿的报表到临时工作簿()
''作者:yuanzhuping版主
DimxAsInteger
Forx=1ToWorkbooks.Count
ActiveWorkbook.SaveCopyAsRange("A1")+".xls"
Sub在有密码的工作表执行代码()
Sheets("1").UnprotectPassword:=123''假定表名为“1”,密码为“123”打开工作表
Range("C:C").SpecialCells(xlCellTypeBlanks).EntireRow.Hidden=True''隐藏C列空值行
Sheets("1").ProtectPassword:=123''重新用密码保护工作表
在有密码的工作表执行代码
PrivateSubWorksheet_SelectionChange(ByValTargetAsRange)
IfRange("A1")>2Then
CommandButton1.Visible=1
Else
CommandButton1.Visible=0
EndIf
EndSub
PrivateSubCommandButton1_Click()
循环宏
在两个宏中依次循环执行一个并相应修改按钮名称(控件按钮代码)
高级筛选5列不重复数据至指定表
根据A1单元文本隐藏/显示按钮(控件按钮代码)
IfWorkbooks(x).Name="临时.xls"Then
ForEachshtInWorkbooks(x).Sheets
Ifsht.Name="001"Then
MsgBox"已经有了001表",64,"提示"
ExitSub
Sheets("报表").CopyBefore:=Workbooks("临时.xls").Sheets(1)
ActiveSheet.Name="001"
ActiveWorkbook.SaveAsFilename:=ThisWorkbook.Path&"\"&"临时"
ThisWorkbook.Activate
Sheets("报表").CopyBefore:=Workbooks("临时.xls").Sheets(1)
复制当前工作簿的报表到临时工作簿
Sub选择到指定列的最后行()
Range("C4:G"&[G65536].End(xlUp).Row).Select
选择到指定列的最后行
Selection.Value=Selection.Value
IfWorksheets("Sheet1").ProtectContents=TrueThen
MsgBox"Sheet1保护了."
敶獁?汩湥浡??瑡?…?汸???谀乔?葒??????啢??
.NumberFormatLocal=Selection.NumberFormatLocal
.HorizontalAlignment=Selection.HorizontalAlignment
.VerticalAlignment=Selection.VerticalAlignment
PrivateSubTextBox1_Change()
IfLen(Me.TextBox1.Text)<>1ThenExitSub
Me.TextBox1.Activate
PrivateSubWorkbook_BeforePrint(CancelAsBoolean)
Range("A1")=1+Range("A1")
Worksheets("Sheet1").PrintPreview
[g:g]=""
Sub将A列数据随机排列到F列()
将A列数据随机排列到F列
回车光标向右
回车光标向下
mycell.FormulaR1C1=mycell.Address
Sub区域录入当前单元地址()
返回当前单元地址
Sub返回当前单元地址()
d=ActiveCell.Address
[A1]=d
PrivateSubCommandButton1_Click()
WithCommandButton1
Sub分离A列数据的文本和超链接并会同其他数据整理到指定表()
ier=Worksheets("数据库").Range("b60000").End(xlUp).Row
Foree=5ToRange("a60000").End(xlUp).Row
ForEachhhInWorksheets("临时").Hyperlinks
Ifhh.TextToDisplay=Cells(ee,1)AndCells(ee,1)<>""Then
www=www&","&ee
www=Right(www,Len(www)-1)
zxc=Split(www,",")
Forsd=0ToUBound(zxc)-1
将名称1的数据写到名称2
Selection=Selection+"×"''不可在数字后添加文本
DimsAsRange
ForEachsInSelection
Sub批量添加文本()
s=s&"文本内容"
.Name="黑体"
.FontStyle="常规"
自动打印多工作表第一页
自动打印多工作表第一页
Sub将A列最后数据行以上的所有B列图片大小调整为所在单元大小()
DimPicAsPicture,i&
i=[A65536].End(xlUp).Row
ForEachPicInSheet1.Pictures
IfNotApplication.Intersect(Pic.TopLeftCell,Range("B1:B"&i))IsNothingThen
Pic.Top=Pic.TopLeftCell.Top
Pic.Left=Pic.TopLeftCell.Left
Pic.Height=Pic.TopLeftCell.Height
Pic.Width=Pic.TopLeftCell.Width
Sheets(i).Select
Forv=1To256
zd=Cells(65535,v).End(xlUp).Row
Ifzd>xThen
x=zd
Nextv
Ify+x-st+1+sp>65536Then
MsgBox"内容太多,仅合并前"&i-2&"个表的内容,请把其它表复制到新工作薄里再用此程序合并!"
Else:
Rows(st&":"&x).Select
Selection.Copy
Sheets(1).Select
Range("A"&CStr(y+1)).Select
ActiveSheet.Paste
Application.CutCopyMode=False''忘掉复制的内容。
y=y+x-st+1+sp
x=0
Selection.EntireRow.Hidden=False
Sub取消隐藏列()
Columns("C:F").Select
Selection.EntireColumn.Hidden=False
Application.CommandBars("StopRecording").Visible=True
录制宏时调用“停止录制”工具栏
录制宏时调用“停止录制”工具栏
mycell.FormulaR1C1="["+ActiveWorkbook.Name+"]"+ActiveSheet.Name+"!"+mycell.Address
Next
在所有工作表的A1单元返回顺序号
根据A1单元内容返回C1数值
根据A1内容选择执行宏
删除A列空行
在A列产生不重复随机数
将A列数据随机排列到F列
取消选定区域的公式只保留值(假空转真空)
处理导入的显示为科学计数法样式的身份证号
[a1].ListNames
Sub在A和B列返回当前选区的名称和公式()
在A和B列返回当前选区的名称和公式
在A和B列返回当前选区的名称和公式
弹出打印对话框
弹出打印对话框
Application.Dialogs(xlDialogPrint).Show
Sub弹出打印对话框()
打印
Application.OnTimeNow+TimeValue("00:00:15"),"重排窗口"
Sub合并数据()
''合并指定目录中所有文件中相同格式工作表的数据
DimmyPath$,myFile$,AKAsWorkbook,aRow%,tRow%,iAsInteger
Application.ScreenUpdating=False''冻结屏幕,以防屏幕抖动
myPath=ThisWorkbook.Path&"\分表\"''把文件路径定义给变量
myFile=Dir(myPath&".xls")''依次找寻指定路径中的.xls文件
DoWhilemyFile<>""''当指定路径中有文件时进行循环
IfmyFile<>ThisWorkbook.NameThen
SetAK=Workbooks.Open(myPath&myFile)''打开符合要求的文件
Fori=1ToAK.Sheets.Count
aRow=AK.Sheets(i).Range("a65536").End(xlUp).Row
tRow=ThisWorkbook.Sheets(1).Range("a65536").End(xlUp).Row+1
''AK.Sheets(i).Select
AK.Sheets(i).Range("a3:k"&aRow).CopyThisWorkbook.Sheets(1).Range("a"&tRow)''取得第3行以后的数据
Next
Workbooks(myFile).CloseFalse''关闭源工作簿,并不作修改
myFile=Dir''找寻下一个.xls文件
Loop
Application.ScreenUpdating=True''冻结屏幕,此类语句一般成对使用
MsgBox"汇总完成,请查看!",64,"提示"
合并指定目录中所有文件中相同格式工作表的数据
Sub返回A列最后非空单元行号()
?DimrgAsRange,iAsLong
?Application.ScreenUpdating=False
?ForEachrgInCells.SpecialCells(xlCellTypeConstants,3)
???Fori=1ToLen(rg)
按当前单元文本选择打开指定文件单元
保存并退出Excel
有条件执行宏
保护工作表时取消选定锁定单元
重排窗口
不连续区域添加文本
不连续区域插入文本
i=1''将表名称返回到第1行
Cells(i,1)=sh.Name''将表名称返回到第1列
i=i+1''返回每个表名称向下移动1行
Windows("2.xls").Close''关闭对象文件
Windows("1.xls").Activate''当前文件名称
Sheets("Sheet1").Select''当前表名称
提示确定或取消执行宏
使单元内容保持不变的工作表代码
ActiveCell=Me.TextBox1.Text
Me.TextBox1.Text=""
引用指定位置单元内容为部分文件名另存文件
选择2至4行
Sub在所有工作表的A1单元返回顺序号()
隐藏/显示指定列空值行
深度隐藏指定工作表
隐藏指定工作表
隐藏当前工作表
按光标选定颜色隐藏本列其他颜色行
打开工作簿自动隐藏录入表以外的其他表
除最左边工作表外深度隐藏所有表
单元赋值
定位
窗口
工作表
文件管理
行列操作
数据
数据
筛选
自定义函数
超链接
查找和引用
语音
WithWorksheets(1)
Sub以当前日期为名称另存文件()
ActiveWorkbook.SaveAsFilename:=Date&".xls"
在M和N列的14行以下选择单元时显示调用日历控件(工作表代码)
[d:d].SortKey1:=Range("D1"),Order1:=xlAscending,Header:=xlYes
Sub将A列数据排序到D列()
将A列数据排序到D列
Sub光标移动()
WithSelection.Validation
.Delete
Sheets(i).Cells(1,1)="''"&Application.WorksheetFunction.Text(0+i,"000")
在所有工作表的A1单元返回顺序号
Fori=1To[a65536].End(xlUp).Row
Forj=2ToSheets.Count
延时15秒执行重排窗口宏
Sub延时15秒重排窗口()
ActiveSheet.UnprotectPassword:=123456
Sub撤消工作表保护并取消密码()
撤消工作表保护并取消密码
撤消工作表保护并取消密码
Sub重算指定表()
EndSub
重算指定表
重算指定表
Worksheets("传送参数").Calculate
A=IIf(y<1,"",Application.Text(y,"[DBNum2]")&"元")
将A列最后数据行以上的所有B列图片大小调整为所在单元大小
将A列最后数据行以上的所有B列图片大小调整为所在单元大小
Selection.Comment.Visible=False
DimXSAsWorksheet
Fori=1ToActiveSheet.Comments.Count
ActiveSheet.Comments(i).Text"透明批注"
ActiveSheet.Comments(i).Shape.Fill.Visible=msoFalse
插入透明批注
Sub添加文本()
添加文本
Sub批量插入统一批注()
DimrAsRange,msgAsString
msg=InputBox("请输入欲批量插入的批注","提示","随便输点什么吧")
r.Comment.TextText:=msg
Sub按当前单元文本定位()
ABC=Selection
DimaaAsRange
ForEachaInActiveSheet.UsedRange
IfaLikeABCThen
IfaaIsNothingThen
DimmyStr$,i&,tRngAsRange
DimmySpkAsSpeech
Columns(1).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
.IndentLevel=Selection.IndentLevel
.ShrinkToFit=Selection.ShrinkToFit
WithApplication
.Calculation=xlManual
EndWith
从指定位置向下同时录入多单元指定内容
''也可直接使用Alt+10或13替换
Application.EnableEvents=False
Target.Offset(0,1)=Target+5
Application.EnableEvents=True
右侧单元自动加5(工作表代码)
Application.CommandBars("File").Controls(4).Enabled=False
Windows.ArrangeArrangeStyle:=xlCascade
Application.CutCopyMode=False
EndSub
Sub批量插入当前文件名和表名及地址()
Application.ScreenUpdating=False
Application.ScreenUpdating=True
Sub当前单元录入计算机名()
Selection=Environ("COMPUTERNAME")
''Selection=Workbooks("临时表").Sheets("表2").Range("A1")调用指定地址内容
EndSub
当前单元录入计算机名
DimptAsPivotTable
DimwsAsWorksheet
ActiveSheet.Hyperlinks.AddRng,"#"&Sheets(i).Name&"!A1",ScreenTip:=Sheets(i).Name
Sheets("目录").Range("b:iv").EntireColumn.ColumnWidth=20
在目录表建立本工作簿中各表链接目录
Sub在目录表建立本工作簿中各表链接目录()
处理导入的显示为科学计数法样式的身份证号
在A列产生不重复随机数
Sub填公式()
Range("C2:C12").Value="=SUM(A2:B2)"
填公式
?过程……
?Sub提示结束()
提示开始和结束
Msgbox"运行开始"
Msgbox"运行结束"
拷贝A1公式和格式到A2
隐藏/显示指定列空值行
Application.ScreenUpdating=False
Workbooks.OpenFilename:=ThisWorkbook.Path&"\2.xls"
调整选中对象中的文字
去除指定范围内的对象
更新透视表数据项
DoWhilel<100
r=Int(Rnd()k)+1''随机数的范围
aa=c(r)
c(r)=c(k)
c(k)=aa
k=k-1
l=l+1
Worksheets("Sheet1").Activate
[A:A].AdvancedFilter2,,[e1],1
Sub把a列不重复值取到e列()
把a列不重复值取到e列
把a列不重复值取到e列
复制当前工作簿的报表到临时工作簿
''复制当前工作簿的“报表”工作表到“临时”工作簿为“001”表。
''如果“临时”工作簿未打开,就创建新工作簿为“临时”并在其中加入“001”表;
''如果“临时”工作簿已经打开,就直接加入“001”表。
''如果打开的“临时”工作簿中已经有“001”表,就报错退出。
需求说明:
ForEachptInws.PivotTables
pt.PivotCache.MissingItemsLimit=xlMissingItemsNone
Nextpt
Nextws
EndSub
Dimi%
Fori=1ToSheets.Count-1
PublicSubWorksheet_Change(ByValTargetAsRange)
IfTarget.Column=2Then
Target.Offset(,-1)=Now
B列录入数据时在A列返回记录时间(工作表代码)
Dimarr
arr=Array("1","2","13","25","46","12","0","20")
[B2].Resize(8,1)=Application.WorksheetFunction.Transpose(arr)
Sub从指定位置向下同时录入多单元指定内容()
Sub返回当前工作表名称()
wsName=ActiveSheet.Name
MsgBox"当前工作表为:"&wsName
返回当前工作表名称
返回当前工作表名称
Sub定义指定工作表标签颜色()
Sheets("Sheet1").Tab.ColorIndex=46
定义指定工作表标签颜色
MsgBoxWorkbooks(2).ActiveSheet.Name
Sub获取上一次所进入工作簿的工作表名称()
获取上一次所进入工作簿的工作表名称
Selection.FormatConditions(3).Interior.ColorIndex=34
插入数值条件格式
i=Cells.Find("",SearchOrder:=xlByRows,LookIn:=xlValues,SearchDirection:=xlPrevious).EntireRow.Row
Rows("5:"&i).Select
选择第5行开始所有数据行
选择第5行开始所有数据行
Rows("5:"&Cells.Find("",,,,1,2).Row).Select
Sub选择第5行开始所有数据行B()
Sub选择第5行开始所有数据行A()
删除指定文件
删除指定文件
Sub删除指定文件()
Kill"E:\信件\1.xls"
Range("A1")=Selection.Row
SubVBA返回公式结果()
Range("B1")=x
VBA返回公式结果
VBA返回公式结果
x=Application.WorksheetFunction.Sum(Range("a2:a100"))
ActiveSheet.Pictures.Insert(ThisWorkbook.Path&"\"&Range("A"&Selection.Row)&".JPG").Select
Selection.ShapeRange.LockAspectRatio=msoTrue
Selection.ShapeRange.Height=84.75
Selection.ShapeRange.Width=150.75
Selection.ShapeRange.Rotation=0#
Selection.ShapeRange.ScaleWidth0.73,msoFalse,msoScaleFromTopLeft
Selection.ShapeRange.ScaleHeight0.73,msoFalse,msoScaleFromTopLeft
Selection.ShapeRange.ScaleHeight0.24,msoFalse,msoScaleFromTopLeft
Selection.ShapeRange.ScaleHeight2.5,msoFalse,msoScaleFromTopLeft
Sub按照当前行A列的图片名称插入图片到H列()
按照当前行A列的图片名称插入图片到H列
按照当前行A列的图片名称插入图片到H列
AAA=Selection.Row
Range("H"&AAA).Select
图片
Selection.RowHeight=37''指定行高
Selection.AutoFilterField:=2
Selection.AutoFilterField:=3
Selection.AutoFilterField:=4
Selection.AutoFilterField:=5
Selection.AutoFilterField:=6
Sub自动筛选全部显示指定列()
自动筛选全部显示指定列
Sub全部显示指定表的自动筛选()
x=Application.WorksheetFunction.CountIf(Range("A3:B100"),"总计")
工作表
打印
单元赋值
密码
匀甀
批注
定位
事件
其他
信息
行列操作
名称
格式
对象
文件管理
Range("C1").FormulaR1C1="合计"
ElseIfRange("A1")="C"Then
Range("C1").FormulaR1C1="部门"
EndIf
Sub根据A1单元内容返回C1数值()
ActiveWorkbook.Close
Sub删除A列空行()
Sub选择光标或选区所在列()
选择光标或选区所在列
强行合并单元
删除A列空行
Sub在A列产生不重复随机数()
RandomizeTimer
Dimc(100)AsByte
Fori=1To100''产生100个随机数
c(i)=i
k=100
.Interior.ColorIndex=Selection.Interior.ColorIndex
.Interior.Pattern=Selection.Interior.Pattern
.Locked=Selection.Locked
.FormulaHidden=Selection.FormulaHidden
EndWith
SetFirstCell=ActiveSheet.UsedRange.Find(what:="",searchformat:=True)
IfFirstCellIsNothingThen
ExitSub
EndIf
SetAllCells=FirstCell
SetFoundCell=FirstCell
Do
SetFoundCell=ActiveSheet.UsedRange.Find(After:=FoundCell,what:="",searchformat:=True)
PrivateSubWorksheet_BeforeDoubleClick(ByValTAsRange,CancelAsBoolean)
Cancel=True
双击指定单元,循环录入文本(工作表代码)
双击指定单元,循环录入文本(工作表代码)
DimnumsAsByte
nums=numsMod3+1
Target=Mid("上中下",nums,1)
Target.Offset(1,0).Select
IfTarget.Address="$A$1"Then
T=IIf(T="好","中",IIf(T="中","差","好"))
IfT.Address<>"$A$1"ThenExitSub
r.Comment.TextText:="本单元格:"&r.Address&"of"&Selection.Address
Sub打开全部隐藏工作表()
DimiAsInteger
Fori=1ToSheets.Count
Sheets(i).Visible=True
Nexti
Sub查另一文件的全部表名()
Dimi%
Application.Speech.Speak"你好,节日快乐。",,,False
ActiveWorkbook.Unprotect
Application.Caption="春节快乐"
将第5行移到窗口的最上面
将第5行移到窗口的最上面
将全部工作表的A1单元作为单击按钮(工作簿代码)
a=Array([b6:b7],[e6],[h6])
用于光标选定多区域跳转指定单元(工作表代码)
在指定工作表的指定单元返回光标当前多选区地址(工作簿代码)
解除允许编辑区域限制
解除允许编辑区域限制
Sub建立当前工作表的副本为001表()
建立当前工作表的副本为001表
DimtAsLong
IfTarget.Address="$A$1"Then
t=Sheet1.Range("$B$1").Value
Sheet1.Range("$B$1").Value=t+Target.Value
将A1单元录入的数据累加到B1单元(工作表代码)
ThisWorkbook.Save
每编辑一个单元保存文件
Cells.ReplaceWhat:=Chr(10),Replacement:="",LookAt:=xlPart,SearchOrder:=_
IfvbOK=MsgBox("确定要复制吗?",vbOKCancel)Then
Sheet1.Columns("B:B").EntireColumn.Hidden=True
隐藏指定工作表的指定列
隐藏指定工作表的指定列
Sub隐藏指定工作表的指定列()
自动筛选全部显示指定列
Workbooks("临时表").Sheets("表2").Range("5:5").Delete
Sub删除指定行()
删除指定行
删除指定行
拷贝指定表不相邻多列数据到新位置
DimaAsInteger
DimbAsInteger
a=2
b=4
Sub除最左边工作表外深度隐藏所有表()
Sheets.Add
Functionzhyz(zhyz1AsRange)
zhyz=StrReverse(zhyz1)
EndFunction
反方向文本(自定义函数)
反方向文本(自定义函数)
Application.Run"宏2"
Sub有条件执行不同的宏()
Range("位置2")=Range("位置1").Value
ThisWorkbook.SaveAsFilename:=ThisWorkbook.Path&"\"&Sheet1.[A1]
Sub以指定单元内容为新文件名另存文件()
以指定单元内容为新文件名另存文件
ThisWorkbook.SaveAsThisWorkbook.Path&"\"&Format(Now(),"yyyymmdd")&".xls"
以当前日期为新文件名另存文件
Sub以当前日期为新文件名另存文件()
[B2]="不可更改的数据"
Sub循环插入分页符()
Sub删除包含固定文本单元的行或列()
Do
Cells.Find(what:="哈哈").Activate
Selection.EntireRow.Delete''删除行
''Selection.EntireColumn.Delete''删除列
LoopUntilCells.Find(what:="哈哈")IsNothing
删除包含固定文本单元的行或列
PrivateSubWorksheet_BeforeDoubleClick(ByValTargetAsRange,CancelAsBoolean)
Rows(Target.Row).Hidden=True
双击单元隐藏该行(工作表代码)
ActiveSheet.EnableSelection=xlUnlockedCells''用于2000版
Sub当前选区的行列数()
Range("A1")=Selection.Rows.Count''当前选区的行数
Range("B1")=Selection.Columns.Count''当前选区的列数
当前选区的行列数
Rows("2:10").RowHeight=40''指定行高
Range("A1:F1").ColumnWidth=10''指定列宽
Range("A2:A10").RowHeight=40''指定行高
编辑
raddress=.Range(taddress).SpecialCells(xlCellTypeConstants,1).Address
.Delete
EndWith
ActiveSheet.Range(raddress).Select
对指定工作表执行取消隐藏》打印》隐藏工作表
对指定工作表执行取消隐藏》打印》隐藏工作表
Sub打印隐藏工作表()
msg=MsgBox("工作表按升序排列请选''是[Y]''."&vbCrLf&vbCrLf&"工作表按降序排列请选''否[N]''",vbYesNoCancel,"工作表排序")
Ifmsg=vbCancelThenExitSub
nums=Sheets.Count
Ifmsg=vbYesThen''Sortascending
Fori=1Tonums
Forj=iTonums
改变Excel界面标题的宏(工作簿代码)
改变Excel界面标题的宏(工作簿代码)
有条件执行不同的宏
If.Value=""Then
.Value="√"
使单元内容保持不变的工作表代码
拷贝指定表不相邻多列数据到新位置
选择2至4行
在当前选区有条件替换数值为文本
填公式
建立当前工作表的副本为001表
清除A列再插入序号
MsgBoxCells.Range("A65536").End(xlUp).Row
Sub以当前日期和时间为新文件名另存文件()
以当前日期和时间为新文件名另存文件
Selection.EntireRow.Copy
Sub复制单元格所在列()
Selection.EntireColumn.Copy
Workbooks.Add
Sub复制单元格所在行()
复制单元格所在行
复制单元格所在行
复制单元格所在列
复制单元格所在列
Sub新建一个工作表()
新建一个工作表
新建一个工作表
Sub新建一个工作簿()
新建一个工作簿
新建一个工作簿
DimSHAsWorksheet
ForEachSHInActiveWindow.SelectedSheets
SH.Activate
临时
Sub在当前工作组各表中分别执行指定宏()
''northwolves版主解答http://club.excelhome.net/dispbbs.asp?boardid=2&id=251426&star=2#914934
IfShtName(i)=sht.NameThen
iFlag=True
ExitFor
EndIf
IfNotiFlagThensht.Delete
Application.DisplayAlerts=True
Sub删除全部未选定工作表()
删除全部未选定工作表
删除全部未选定工作表
MsgBox"提示"&Range("A1").Value
Sub弹出提示A1单元内容()
弹出提示A1单元内容
弹出提示A1单元内容
Range("A4:A14").CopyRange("b4:b14")
Sub提示确定或取消执行宏()
Msgbox"复制结束"
有条件执行宏
提示确定或取消执行宏
自动数字金额转大写(工作表代码)
自动数字金额转大写(工作表代码)
返回A列最后一个非空单元行号
返回A列最后一个非空单元行号
X=[IV1].End(xlToLeft).Column
MsgBoxX
Sub返回第1行最右边非空单元的列号()
返回第1行最右边非空单元的列号
返回第1行最右边非空单元的列号
Sub统计指定范围和内容的单元数量()
统计指定范围和内容的单元数量
统计指定范围和内容的单元数量
.Value=""
EndIf
EndWith
Next
以本工作表名称另存文件到当前目录
将本工作表单独另存文件到Excel当前默认目录
以活动工作表名称另存文件到Excel当前默认目录
另存所有工作表为工作簿
以指定单元内容为新文件名另存文件
以当前日期为新文件名另存文件
以当前日期和时间为新文件名另存文件
引用指定位置单元内容为部分文件名另存文件
将A列数据排序到D列
将指定范围的数据排列到D列
光标所在行上移一行
加数据有效限制
取消数据有效限制
保护工作表时取消选定锁定单元
??DimpAsShape
???ForEachpInMy.Shapes
???Next
???????IfNotApplication.Intersect(p.TopLeftCell,Range("范围"))IsNothingThenp.Delete
Sub去除指定范围内的对象()
SubDeleteMissingItems2002All()
''防止数据透视表中显示无用的数据项
''在Excel2002或更高版本中
''如果无用的数据项已经存在,
''运行这个宏可以更新
sy=InputBox("请输入结束工作表名字:")
y=Sheets(x).Index
syz=Sheets(sy).Index
Forsh=yTosyz
Sheets(sh).Select
Sheets(sh).PrintOutfrom:=1,To:=1
Nextsh
WithApplication.FindFormat
.Clear
DimI%,str1$
I=1
Sheets("aa").Select
Sub在A1返回当前选中单元格数量()
[A1]=Selection.Count
在A1返回当前选中单元格数量
在A1返回当前选中单元格数量
Sub删除全部名称()
DimlAsInteger
l=ActiveWorkbook.Names.Count
Fori=lTo1Step-1
ActiveWorkbook.Names(i).Delete
删除全部名称
删除全部名称
在指定单元记录打印和预览次数(工作簿代码)
在指定单元记录打印和预览次数(工作簿代码)
OptionExplicit
???????Sheets(n).Unprotect
???Nextn
Sub解除全部工作表保护()
解除全部工作表保护
解除全部工作表保护
工作表
另存本表为TXT文件
另存本表为TXT文件
Sub提示并全部清除当前选择区域()
IfMsgBox("你确定要清除选择的区域吗?",vbYesNo,"提示:")=vbYesThenSelection.Clear
提示并全部清除当前选择区域
"A1"),Unique:=True
OrderCustom:=1,MatchCase:=False,Orientation:=xlTopToBottom,SortMethod_
:=xlPinYin
Rows(Target.Row).Interior.ColorIndex=34
Columns(Target.Column).Interior.ColorIndex=34
高亮显示行和列(工作表代码)
高亮显示行和列(工作表代码)
IfFoundCell.Address=FirstCell.AddressThenExitDo
Loop
AllCells.Select
Fori=1To23
Cells(i,1)=Cells(i,1)-Cells(i,2)
SubA列等于A列减B列()
A列等于A列减B列
工作表标签排序
在目录表建立本工作簿中各表链接目录
建立工作表文本目录
查另一文件的全部表名
工作簿
其他
PrivateSubCalendar1_Click()
WithCalendar1
ActiveCell=.Value
.Visible=False
Forwee=zxc(sd)+1Tozxc(sd+1)-1
Worksheets("数据库").Cells(sdf+ier+1,uu+4)=Cells(wee,1)
uu=uu+1
sdf=sdf+1
uu=0
ForEachhhhInWorksheets("临时").Range("A6:A6000").Hyperlinks
Worksheets("数据库").Cells(ier+1,2)=hhh.TextToDisplay
Worksheets("数据库").Cells(ier+1,3)=hhh.Address
Range(Worksheets("数据库").Cells(ier+1,3),Worksheets("数据库").Cells(ier+1,3)).Hyperlinks.AddAnchor:=Worksheets("数据库").Cells(ier+1,3),Address:=Worksheets("数据库").Cells(ier+1,3)
ier=ier+1
分离临时表A列数据的文本和超链接并会同其他数据整理到数据库表
分离临时表A列数据的文本和超链接并会同其他数据整理到数据库表
分离临时表A列数据的文本和超链接并整理到数据库表
分离临时表A列数据的文本和超链接并整理到数据库表
MsgBoxCells.SpecialCells(2).Address
MsgBoxCells.Find("").Address
Sub选择下一行()
ActiveCell.Offset(1,0).Rows("1:1").EntireRow.Select
选择下一行
DimdicAsObject,shAsWorksheet
Dimarr,item
arr=Range("B1:BB1")
Setdic=CreateObject("scripting.dictionary")
ForEachshInThisWorkbook.Worksheets
dic.Addsh.Name,""
ForEachitemInarr
Ifitem<>""AndNotdic.exists(Trim(item))Then
WithThisWorkbook.Worksheets.Add
.Name=item
EndWith
Setdic=Nothing
Sub以指定区域为表目录补充新表()
以指定区域为表目录补充新表
x=Application.CountA(Range("A1:Z65536"))
MsgBoxx
Sub返回A列非空单元数量()
y=Application.CountA(Columns(1))
MsgBoxy
执行前需要验证密码的宏(控件按钮代码)
IfInputBox("请输入您的使用权限:","系统提示")=123Then
Selection.FormatConditions.AddType:=xlCellValue,Operator:=xlGreater,_
Formula1:="70"
Selection.FormatConditions(1).Interior.ColorIndex=45
WithSelection
.HorizontalAlignment=xlCenter
.VerticalAlignment=xlCenter
.ReadingOrder=xlContext
.Orientation=xlHorizontal
.AutoSize=True
.AddIndent=False
调整选中对象中的文字
Sub批量录入对勾()
AAA=Range("C2")
times=AAA
Call过滤一行
Sub另存本表为TXT文件()
''FullName=Replace(ThisWorkbook.FullName,".xls",".txt")''以当前文件名为TXT文件名
FullName=(ActiveSheet.Name&".txt")''以当前表名为TXT文件名
''FullName=Replace(ThisWorkbook.FullName,".xls",ActiveSheet.Name&".txt")''以文件名&表名为TXT文件名
MsgBox"数据已导入文本"
查另一文件的全部表名
当前单元录入计算机用户名
按固定文本定位
指定允许编辑区域
有条件删除当前行
去除指定范围内的对象
光标移动
加数据有效限制
IfRange("完成标志")="完成"ThenExitFor''如果名为''完成标志''的命名单元的值等于''完成'',则退出循环,如果一开始就等于''完成'',则只执行一次循环就退出
''IfSheets("传送参数").Range("A"&i).Text="完成"ThenExitFor''如果某列出现"完成"内容则退出循环
Sub选择多表为工作组()
DimWksAsWorksheet,shtCntAsInteger
Dimarr()AsVariant,iAsInteger,mAsInteger,m1AsInteger,m2AsInteger
shtCnt=ThisWorkbook.Sheets.Count''取得工作表总数
ReDimarr(1ToshtCnt)''预定义数组
i=0
m=1''循环的次数
m1=0''找到起点循环的次数
m2=0''找到终点循环的次数
ForEachWksInThisWorkbook.Sheets''在所有工作表中循环
IfWks.Name="A2"Then''工作组中第一个工作表名称
i=i+1
arr(i)=Wks.Name''将工作表名称存进数组
m1=m
IfWks.NameLike"A7"Then''工作组中最后一个个工作表名称
m2=m
ExitFor
Ifi>0Andm>m1Then
m=m+1
Ifm2>m1Then''如果存在符合条件的工作表名称
ReDimPreservearr(1Toi)''重定义数组
ThisWorkbook.Sheets(arr).Select''选中符合条件的所有工作表
选择多表为工作组
选择多表为工作组
Application.DisplayAlerts=False
在M和N列的14行以下选择单元时显示调用日历控件(工作表代码)
''丢失复制功能
Else
Sub高级筛选5列不重复数据至Sheet2()
Sheets("Sheet2").Range("A1:E65536")=""''清除Sheet2的A:D列
Range("A1:E65536").AdvancedFilterAction:=xlFilterCopy,CopyToRange:=Sheet2.Range(_
Sheet2.Columns("A:E").SortKey1:=Sheet2.Range("A2"),Order1:=xlAscending,Header:=xlGuess,_
高级筛选5列不重复数据至指定表
Sheets("报表1").Visible=1
Sheets("报表1").PrintOutCopies:=1,Collate:=True
Sheets("报表1").Visible=0
Dima,bAsInteger
a=Sheet1.[a65536].End(xlUp).Row
Forb=aTo2Step-1
IfCells(b,1).Value="删除"Then
Rows(b).Delete
EndIf
Next
Sub删除A列为指定内容的行()
删除A列为指定内容的行
删除A列为指定内容的行
IfTarget.Address="$A$1:$C$3"Then
MsgBox"你选择对了"
IfTarget.Address="$A$1:$B$2"Then
Range("E1:E1000").SpecialCells(xlCellTypeBlanks).EntireRow.Hidden=Not(Range("E1:E1000").SpecialCells(xlCellTypeBlanks).EntireRow.Hidden)
ActiveSheet.CopyBefore:=Sheets(1)
ActiveSheet.Name="001"
[iv1:iv12]="=rc1&""""&rc2&""""&rc3"
[d15].AddCommentJoin(Application.Transpose([iv1:iv12]),vbCrLf)
[iv1:iv12]=""
[d15].Comment.Visible=True
[d15].Comment.Shape.Height=100
‘http://club.excelhome.net/dispbbs.asp?boardid=2&id=251887northwolves版主
IfSelection.Cells.Count>0Then
ForEachrInSelection
r.AddComment
r.Comment.Visible=False
r.Comment.TextText:=[a1].Text
Next
EndIf
Sub批量插入地址批注()
OnErrorResumeNext
r.Comment.Delete
Cells.Interior.ColorIndex=2
高亮显示行(工作表代码)
高亮显示行(工作表代码)
Rows(Target.Row).Interior.ColorIndex=35''高亮推荐颜色35,20,24,34,37,40,15
Rows("1:2").Interior.ColorIndex=40''保持1至2行的颜色推荐39,22,40,
返回表中第一个非空单元地址(行搜索)
返回表中第一个非空单元地址(行搜索)
Sub返回表中第一个非空单元地址()
为指定工作表加指定密码保护表
B列录入数据时在A列返回记录时间(工作表代码)
指定允许编辑区域
删除A列非数字单元行
有条件删除当前行
选择光标或选区所在行
选择光标或选区所在列
光标定位到名称指定位置
选择名称定义的数据区
将Sheet1的A列的非空值写到Sheet2的A列
将名称1的数据写到名称2
?Application.ScreenUpdating=True
Sub定位选定单元格式相同的全部单元格()
定位选定单元格式相同的全部单元格
按光标选定颜色隐藏本列其他颜色行
a=Selection.Address
IfTarget.Column=13AndTarget.Row>3OrTarget.Column=14AndTarget.Row>3Then
IfIsDate(Target)Then
Calendar1.Value=Target
Else
Calendar1.Today
Calendar1.Visible=-20
Calendar1.Top=ActiveCell.Top+ActiveCell.Height
Calendar1.Left=ActiveCell.Left+Cells(ActiveCell.Rows.Count,1).Left
Calendar1.Visible=0
Worksheets("表2").Range("A1")=Target.Address(0,0)
IfNotApplication.Intersect(Target,[A1:A1000])IsNothingThen
IfTarget.Column=1Then
Target.Offset(,1)=Format(Now(),"yyyy-mm-dd")
Target.Offset(,2)=Format(Now(),"h:mm:ss")
当指定区域修改时在其右侧的2个单元返回当前日期和时间(工作表代码)
当指定区域修改时在其右侧的2个单元返回当前日期和时间(工作表代码)
Target.Offset(,1)=Date
Target.Offset(,2)=Time
PublicFunctionCOLOR(ByValXAsRange,Y)
ForEachIInX
/
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
返回
返回
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
.00
.00
点击
点击
登录
|
|