当前位置:主页 > Office办公 > Excel专区 > Excel函数

最新发布

EXCEL利用VBA播放WAV声音文件
EXCEL利用VBA播放WAV声音文件

如果用VBA代码播放WAV声音文件,可以用下面的代码:Private Declare Function sndPlaySound32 _Lib "winmm.dll" _Alias "sndPlaySoundA" ( _ByVal lpszSoundName As String, _ByVal uFlags As Long) As LongSub PlayWavFile()sndPlaySound32 "C:\Windows\Media\ding.wav", 0&End Sub运行上述代码将播放“C:\Windows\Media”文件夹中的ding.wav声音文件。

334 次浏览
excel利用VBA在标题栏中显示工作簿的路径
excel利用VBA在标题栏中显示工作簿的路径

通常,当我们打开一个Excel工作簿时,标题栏中仅仅显示一个简单的文件名。我们可以用下面的VBA代码,让工作簿在打开时在标题栏显示其路径和文件名:按Alt+F11,打开VBA编辑器,在“工程”窗口中双击“ThisWorkBook”,在右边的代码窗口中输入以下代码:Private Sub Workbook_Open()ActiveWindow.Caption = ActiveWorkbook.FullNameEnd Sub需要注意的是,上述代码只是在工作簿打开时运行,如果将工作簿另存为其他名称,在上述代码未运行的前提下,标题栏中的路径不会改变。

110 次浏览
在excel用VBA更改批注的作者
在excel用VBA更改批注的作者

在Excel中,当光标移动到包含批注的单元格中时,通常会在状态栏和批注中显示批注者的名称。如果需要将批注者改为其他人,可以用下面的VBA代码。以后再插入新的批注,也将使用新输入的名称。使用前先将代码中的“新作者”和“原作者”按照需要进行替换。Sub ChangeCommentName()Dim ws As WorksheetDim cmt As CommentDim strOld As StringDim strNew As StringDim strComment As StringstrNew = "新作者"strOld = "原作者"Application.UserName = strNewFor Each ws In ActiveWorkbook.WorksheetsFor Each cmt In ws.CommentsstrComment = Replace(cmt.Text, strOld, strNew)cmt.Deletecmt.Parent.AddComment Text:=strCommentNext cmtNext wsEnd Sub

313 次浏览
excel在宏对话框中不显示宏命令名称
excel在宏对话框中不显示宏命令名称

如果Excel工作簿中包含宏命令,可以通过宏对话框来查看这些宏命令名称。方法是单击菜单“工具→宏→宏”,或按Alt+F8打开“宏”对话框。例如如下的代码: 在工作表中打开宏对话框: 有时我们不希望使用者通过宏对话框来运行宏命令,这时可以在代码的前面加上“Private”关键字。如:Private Sub test()……End Sub这样,当打开宏对话框后将看不到宏命令名称。

128 次浏览
如何在Excel中查找显示为井号(#)的单元格
如何在Excel中查找显示为井号(#)的单元格

有时打印Excel表格后发现有些单元格显示为井号(#),这些井号(#)并非手工输入的,而是Excel中的一种错误处理方法。例如当列宽不足或日期和时间为负数时,Excel就将这些单元格显示为井号(#)。处理的方法很简单,对于包含数字且显示为井号(#)的单元格,调整一下列宽或设置单元格格式为“缩小字体填充”;对于第二种情况,检查并修正公式即可。如果表格中的内容较多,一时无法看清哪些单元格包含错误的井号(#),可以用下面的VBA代码在当前工作表中查找,步骤如下:1.选择包含井号(#)的工作表,按Alt+F11,打开VBA编辑器。2.在“代码”窗口中输入下列代码:Sub 查找单元格井号()Dim rng As RangeFor Each rng In ActiveSheet.UsedRangeIf Left(rng.Text, 1) = "#" Thenrng.SelectMsgBox rng.Address & " 单元格包含#号"End IfNext rngEnd Sub3.运行代码。

152 次浏览
用VBA代码在Excel状态栏中显示提示信息
用VBA代码在Excel状态栏中显示提示信息

当我们在运行一个执行时间稍长的VBA代码时,可以用下面的VBA代码在状态栏中显示一些信息来提示用户:Application.StatusBar = "提示信息"代码运行完毕,再恢复默认状态栏:Application.StatusBar = FALSE例如下面的代码在状态栏中显示“正在运行,请稍后……”的提示信息,显示时间为5秒钟。Sub DisplayMessageOnStatusbar()‘开始执行代码Application.DisplayStatusBar = True ‘显示状态栏Application.StatusBar = "正在运行,请稍后……" ‘状态栏显示信息‘5秒钟后恢复默认状态栏Application.Wait Now + TimeValue("00:00:05")Application.StatusBar = FalseEnd Sub

235 次浏览
excel获取屏幕分辨率的VBA代码
excel获取屏幕分辨率的VBA代码

用下面的代码可以获取屏幕分辨率,需将其放入模块中运行。1.按Alt+F11打开VBA编辑器。2.单击菜单“插入→模块”,在模块中输入下列代码并运行:Declare Function GetSystemMetrics32 Lib "user32" _Alias "GetSystemMetrics" (ByVal nIndex As Long) As LongSub DisplayMonitorInfo()Dim X As Long, Y As LongX = GetSystemMetrics32(0) ‘ 宽度(像素)Y = GetSystemMetrics32(1) ‘ 高度(像素)MsgBox "屏幕分辨率为:" & X & " × " & Y & " 像素"End Sub

250 次浏览
如何在Excel中输入数据时自动加入一个时间戳
如何在Excel中输入数据时自动加入一个时间戳

当我们在Excel中输入或更新数据时,有时需要自动添加一个时间戳,表示当前数据的最新更新时间。如下图所示,当在C列更新数据时,在D列自动加入更新时的时间。 可以用VBA代码来实现,实现步骤如下:按Alt+F11,打开VBA编辑器。在“工程”窗口中双击“ThisWorkBook”,在右侧的代码窗口中粘贴下列代码:Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)If ActiveSheet.Name <> "Sheet1" Then Exit SubIf Target.Column = 3 Then Target.Offset(0, 1) = NowEnd Sub这样,当“Sheet1”表C列单元格中的内容发生改变时,Excel会自动在D列同一行中的单元格中添加时间。如果要将目标区域指定为C2:C20,可以用下面的代码:Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)If ActiveSheet.Name <> "Sheet1" Then Exit SubWith TargetIf .Column = 3 And .Row > 1 And .Row < 21 Then .Offset(0, 1) = NowEnd WithEnd Sub需要注意的是,当目标区域中的任意单元格内容发生改变,包括删除或更新数据时,都将触发Worksheet.SelectionChange 事件

180 次浏览
如何用VBA检查Caps Lock键是否打开
如何用VBA检查Caps Lock键是否打开

要用VBA代码判断Caps Lock键、Num Lock键及Scroll Lock键的开启状态,可以用下面的代码,前四行代码为API声明,需放置在代码窗口的最上方:Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As IntegerConst VK_NUMLOCK = &H90Const VK_SCROLL = &H91Const VK_CAPITAL = &H14Private Sub KeyStates()If GetKeyState(VK_CAPITAL) Then ‘Caps Lock键MsgBox "Caps Lock ON"ElseMsgBox "Caps Lock OFF"End IfIf GetKeyState(VK_NUMLOCK) Then ‘Num Lock键MsgBox "Num Lock ON"ElseMsgBox "Num Lock OFF"End IfIf GetKeyState(VK_SCROLL) Then ‘Scroll Lock键MsgBox "Scroll Lock ON"ElseMsgBox "Scroll Lock OFF"End IfEnd Sub另外,在Word中可以使用下面的VBA代码来判断Caps Lock键是否开启:Sub KeyStates()If Selection.Information(wdCapsLock) ThenMsgBox "Caps Lock 键已开启"ElseMsgBox "Caps Lock 键已关闭"End IfEnd Sub

160 次浏览
excel利用快捷键将区域中的公式结果转换为数值
excel利用快捷键将区域中的公式结果转换为数值

在使用Excel时,如果经常需要将某些区域中的公式结果转换为数值,可以使用下面的VBA代码,并将其指定一个快捷键。这样,用快捷键就可以快速将某些区域中的公式结果转换为数值。方法如下:1.按Alt+F11,打开VBA编辑器,单击菜单“插入→模块”。2.在右侧的代码窗口中输入下列VBA代码:Sub MakeValues()Dim Rng As RangeApplication.ScreenUpdating = FalseApplication.Calculation = xlCalculationManualFor Each Rng In SelectionRng.Value = Rng.ValueNext RngApplication.ScreenUpdating = TrueApplication.Calculation = xlCalculationAutomaticEnd Sub3.关闭VBA编辑器,返回到Excel工作表界面。4.按快捷键Alt+F8,打开“宏”对话框。选择“MakeValues”宏命令,点击“选项”按钮。 在弹出的“宏选项”对话框中,为该宏指定一个快捷键,如“Ctrl+E”。 单击“确定”按钮,关闭“宏”对话框。

166 次浏览
共计5788条记录 上一页 1.. 65 66 67 68 69 70 71 ..579 下一页