【问题标题】:VBA run time ExcelVBA 运行时 Excel
【发布时间】:2022-11-14 20:14:59
【问题描述】:
我正在使用以下代码 Excel 2016 VBA 并且工作表保存在网络上的共享驱动器上以供多用户使用
我已经合并了 J1:M1 中的单元格,它适用于我的 PC 和一些 PC 节目
运行时错误 5:无效的过程调用或参数
考虑到所有用户都使用相同的 excel 2016
Range("J1").value= left(application.username, instr(application.username,"@")-1
【问题讨论】:
标签:
excel
vba
runtime-error
invalid-argument
【解决方案1】:
对于application.username 不包含@ 的用户,它很可能会失败
您可以使用一个单独的函数来检查 @-sign
Public Function getUserName() As String
If InStr(Application.UserName, "@") > 0 Then
getUserName = Left(Application.UserName, InStr(Application.UserName, "@") - 1)
Else
getUserName = Application.UserName
End If
End Function
并像这样使用它:
Range("J1").value = getUserName