我有一个宏,我通过自定义UI编辑器添加的选项卡/组/按钮调用 -
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
<ribbon startFromScratch="false">
<tabs>
<tab id="tabCustomActions" label="Custom ActionsXXX" insertAfterMso="TabDeveloper">
<group id="GroupTLA" label="TLA Actions">
<button id="buttonFormatTLA" label="Format as TLA" image="TLALogo" size="large" onAction="start_tla" />
</group>
</tab>
</tabs>
</ribbon>
</customUI>
Run Code Online (Sandbox Code Playgroud)
按钮显示很好,带有我的自定义徽标,但是当我点击按钮时,我得到以下错误 -

通常情况下,此错误后未打开VBA,如果我打开开发人员控制台然后尝试单击按钮,则VBA中的代码不会被指示为问题.
奇怪的是,如果我尝试手动运行宏,它可以正常工作,没有错误.有没有人有任何想法如何解决这个问题?
如果您希望查看它,这是我在Pastebin中的完整代码.谢谢.
我试图创建一些VB代码,将获得上个月的开始和结束.我能够在当前这个月只是:
Month(DateValue(Now))
Run Code Online (Sandbox Code Playgroud)
哪个会返回3.从那里我可以带走1给我2个意思二月.这很好,但是当我在1月份,我重复这个并且它给我零 - 我的代码将失败.谁知道如何获得前几个月的开始和结束日呢?
谢谢
我想根据各种变量的条件追加一个带数字的数组.这是我提出的代码:我从一个空数组开始.
Sub makeArr()
Dim myArr() As Integer
If box1 = True Then
ReDim Preserve myArr(LBound(myArr) To UBound(myArr) + 1)
myArr(UBound(myArr)) = 1
End If
If box2 = True Then
ReDim Preserve myArr(LBound(myArr) To UBound(myArr) + 1)
myArr(UBound(myArr)) = 2
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
显然这是一个例子,所以不是最优雅的方式,但它不起作用,因为我似乎无法重新调整数组,因为它最初没有ubound或一个lbound.当我调暗它时,myArr(0 to 0)这也失败了.
有任何想法吗?
我的代码
Dim a As Integer
a = InputBox("Enter the number", "Program", "", 7000, 6000)
If a = Empty Then
' do code...
Else
MsgBox "Enter the number."
End If
Run Code Online (Sandbox Code Playgroud)
如果我留下一个空字段,Excel将返回Type Mismatch错误.我想显示一条消息.
我在Word 2013中有一个模板文档,用户填写了大量的Legacy Text FormFields.在文档的最后,我添加了一个按钮,将答案编译成没有格式化的字符串,然后将其复制到剪贴板.
它可以工作,但是在读取每个FormField时,Word文档会在每个文本字段和文档末尾之间来回跳过.这在视觉上令人担忧.有没有办法收集每个FormField的值而不用Word将光标/焦点移动到每个字段时读取?
以下是代码示例:
Private Sub cmdCreateNote_Click()
Call cmdClearNote_Click
Dim ff As FormFields
Set ff = ActiveDocument.FormFields
Dim Output As String
Output = ff("ddReviewType").Result & vbCrLf
If ff("chFacInfo").Result Then
Dim FacInfo
FacInfo = Array("Field1: ", _
"Field2: ", _
"Field3: ", _
"Field4: ", _
"Field5: ")
Output = Output & "FIRST SECTION" & vbCrLf
For Index = 1 To 5
If ff("chFacInfo" & Index).Result Then
Output = Output & FacInfo(Index - 1) & ff("txFacInfo" & …Run Code Online (Sandbox Code Playgroud) 我是否可以指出如何使用AddShape定位通过VBA创建的文本框的"允许文本溢出形状"?我已经查看了对象引用textframe/textframe2而没有运气.
这可以在没有vba的情况下实现[但我有很多文本框]:
右键单击[文本框形状] >>格式形状>>文本框>>允许文本溢出形状["自动调整"组下的勾选框]
我也做过宏观录音无济于事
建议非常感谢
我需要能够使用VBA代码在excel中的空表中插入一大组值.这是代码到目前为止的工作方式.
首先,用户将值输入到用户表单中.然后代码清除表格,然后根据代码中已有的查找条件找到一系列数字.检索到的数据全部包含在单个列中,并像数组一样存储.
从这里开始,我需要将所有值放入表中的某个列(Policy#),从而将表行扩展为检索数据集中的许多行.(如果需要,我确实将计数单独存储为"AC")我要插入的列标题是"Policy#".
请记住,代码当前表中只有一个空行,如何正确插入数据?我试过了
range("commissionstatement[Policy #]").value = Als
Run Code Online (Sandbox Code Playgroud)
但那不起作用.顺便提一下,Als是一系列价值观.通常要插入我必须插入到大小相等的范围的数组,这就是为什么我已经将行计数作为AC.
我也尝试过使用range("commissionstatement").listobject.listrows但不起作用.
有什么建议?在我实际将数据放入那里之前,我是否需要在表中插入一些等于我添加的数据的行...
range("commissionstatement").listobject.listrows.add ()
Run Code Online (Sandbox Code Playgroud)
然后插入数据?
如果需要更多信息,请与我们联系.谢谢!
这是我第一次编写 VBA。我需要使用我的数据库中的数据生成一个 Word Doc(仅限选定表)。我设法使用XXX.Selection.TypeText. 但是我不知道如何为报告包含页眉和页脚。我尝试了很多方法,但无法得到我想要的结果。
我的问题是,我可以使用/打开预定义的 Word 文档(带有页眉和页脚)并在该预定义的 Word 文档中填充我的数据吗?
谢谢!
我在excel中有以下vba命令
wbImportFrom.Sheets("Sheet 3").Cells(n, 8).Value
Run Code Online (Sandbox Code Playgroud)
这让我回来了
0,128888889
Run Code Online (Sandbox Code Playgroud)
我可以把它变成百分比
Format(wbImportFrom.Sheets("Sheet 3").Cells(n, 8).Value,"Percent")
-- returns 13.00 %
Run Code Online (Sandbox Code Playgroud)
如何将百分比数字舍入为整数(13%)?其他例子
0,057 => 6%
0,088571429 => 9%
0,15 => 15%
0,048461538 => 5%
0,128888889 => 13%
0,03 => 3%
0 => 0%
Run Code Online (Sandbox Code Playgroud)
我尝试使用Round和Val函数,但它对我不起作用:p
我的userform中有一个多列列表框,我希望得到列表框中所选行中所有元素的值.
这是我的用户形式:
就像在照片中一样,我想选择一行然后我会点击按钮Associer,我可以获得这一行的信息.我可以得到第一列,CAN20168301436我想从整行获取信息.
我该怎么做?
这是我点击的按钮事件:
Private Sub CommandButton3_Click()
a = ListBoxResultatFind.Text
End Sub
Run Code Online (Sandbox Code Playgroud)