使用 Windows 7、Excel 2013 我对 VBA 非常陌生,并且花了数小时尝试与其他问题不同的解决方案。
这是我目前用来将我的数字签名插入到用作表单的 excel 文档中的代码。
ActiveSheet.Shapes.AddShape(msoShapeRectangle, 208.3333070866, 659.1666929134, _
243.3333858268, 38.3333070866).Select
Selection.ShapeRange.ScaleWidth 1.0787668906, msoFalse, msoScaleFromTopLeft
Selection.ShapeRange.ScaleHeight 1.0217405147, msoFalse, _
msoScaleFromBottomRight
Selection.ShapeRange.Line.Visible = msoFalse
With Selection.ShapeRange.Fill
.Visible = msoTrue
.UserPicture "C:\Users\msporney\Documents\Signature.jpg"
.TextureTile = msoFalse
.RotateWithObject = msoTrue
我的问题:当我工作时代码工作正常我与其他用户共享此工作簿。我们的文档文件夹中都有相同的文件“signature.jpg”,但此代码仅指我的机器(msporney)。我需要对文件位置 (C:\users\anybody) 的相对引用。
我试过了:
.UserPicture "C:\users\\Documents\Signature.jpg"
.UserPicture "C:\users\.\Documents\Signature.jpg"
.UserPicture "C:\users\\Documents\Signature.jpg"
.UserPicture "\..\Documents\Signature.jpg"
我总是得到同样的错误:运行时错误'-2147024893(800700003)':对象“FillFormat”的方法“UserPicture”失败