
很简单,如果你是直接在EXCEL的UserForm里面做的,那么就一句代码:
Private Sub CommandButton1_Click()
Cells(1, "A") = Format(Now(), "yyyy-mm-dd,hh:mm:ss") '在A1写入年-月-日,时:分:秒
Range("A2") = Format(Now(), "yyyy-mm-dd") '在A2写入年-月-日
Cells(3,1) = format(Now(),"hh:mm:ss") '在A3写入时:分:秒
End Sub
使用这个函数吧,可以得到文件的 创建时间 或 最后修改时间:
-------------------------
Function iFileDate(iPh, n)
' 参数说明:
' iph 文件路径。
' n 时间类型。 1 为 创建时间;2 为 最后修改时间
If Dir(iPh) = "" Then Exit Function
Dim fs: Set fs = CreateObject("ScriptingFileSystemObject")
Dim f: Set f = fsGetFile(iPh)
If n = 1 Then iFileDate = fDateCreated
If n = 2 Then iFileDate = fDateLastModified
End Function
---------------------
具体使用方法举例:
---------------
Sub iTest()
Dim iPh, iDate1, iDate2
iPh = "G:\D baiduHi\VBA 文件 *** 作\axls"
If Dir(iPh) = "" Then
MsgBox "下面的文件不存在:" & vbCrLf & iPh, vbCritical
Exit Sub
End If
iDate1 = "创建时间:" & vbTab & iFileDate(iPh, 1)
iDate2 = "最后修改时间:" & vbTab & iFileDate(iPh, 2)
MsgBox iPh & vbCrLf & iDate1 & vbCrLf & iDate2
End Sub
VBA不能或者说不能全支持获取长度,原因如下:
当文字旋转角度为0时,可以利用getboundingbox获取左下和右上两个角点的坐标,这是个方框,利用左下右上两个X值相减即可获取文字长度。
但是
当文字旋转角度较大时,如下图:
测试代码如下:
Sub test()
Dim zx As Variant
Dim ys As Variant
Dim pt As Variant
Dim ent1 As AcadEntity
ThisDrawingUtilityGetEntity ent1, pt, "拾取对象"
ent1GetBoundingBox zx, ys
Dim pl As AcadLine
Set pl = ThisDrawingModelSpaceAddLine(zx, ys)
Stop
End Sub
综上,VBA获取旋转角为0或者旋转角只有几度的文字的最大包围框是可以的,旋转角太大了就显得力有未逮了
完!!!
一句代码就可以搞定
比如你要打开E盘名为123wmv视频,直接用以下代码
Shell "Explorer E:\123wmv",vbHide
或者用这个代码也可以
CreateObject("WscriptShell")Run("E:\123wmv")
我想申请知识答主,如果可以的话帮忙关注一下我哈!谢谢!
在 VBA 中计算单元格长度,可以使用如下代码:
Dim cell As RangeDim text As StringDim length As Double'获取当前单元格对象Set cell = ActiveCell'获取单元格文本内容text = cellValue'计算文本内容长度length = Len(text)'或者使用如下语句,忽略前后空格length = Len(Trim(text))'或者使用如下语句,计算单元格包含的所有字符长度length = Len(cellText)
以上代码中,首先使用 ActiveCell 获取当前选定的单元格对象,然后使用 Value 或者 Text 属性获取单元格中的文本内容,使用 Len 函数计算文本内容的长度。如果需要忽略单元格中的空格,可以使用 Trim 函数。
需要注意的是,以上代码只能计算单元格中文本的长度,并不能计算单元格本身的宽度。如果需要使用宽度作为长度的指标,可以通过 Width 属性获取单元格的宽度,例如:
Dim cell As RangeDim width As Double'获取当前单元格对象Set cell = ActiveCell'获取单元格宽度,单位为点(1英寸=72点)width = cellWidth'将宽度转换为字符数量length = width / 72
以上代码中,Width 属性返回的是单元格的宽度,单位是点(pt),而字符的宽度可以约定为 72pt 左右(具体取决于字体和字号),因此可以将单元格宽度除以 72 得到大致的字符数量。
Sub t()
l = 0
For lie = 1 To 255
For hang = 1 To Cells(65536, lie)End(xlUp)Row
If l < Len(Cells(hang, lie)) Then
l = Len(Cells(hang, lie))
r = hang
c = lie
End If
Next
Next
MsgBox "最长的是第" & r & "行第" & c & "列的单元格,长度为:" & l & "个字符" & vbCrLf & "内容为:" & Cells(r, c)Value
End Sub
以上就是关于vba获取系统时间并自动写到一个指定的excel文件里全部的内容,包括:vba获取系统时间并自动写到一个指定的excel文件里、如何用EXCEL VBA批量提取JPG文件日期时间信息到表格中、如何通过VBA计算cad文字实际显示长度(注意看详细描述)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)