我需要为VBA中的变量赋一个数字值.
我这样做了:
var num as integer
num=1
Run Code Online (Sandbox Code Playgroud)
但是当我在断点处num=1看到num它的值显示为0(零)时.
请帮忙.
所以有几个愚蠢的问题:
如果我在某些情况下包括这个:
MsgBox " ", vbOkOnly, "This little message box"
Run Code Online (Sandbox Code Playgroud)
我可以用更多的代码转过来然后'点击确定按钮.那么基本上消息boox会自动弹出,然后自动消失?
我知道它很愚蠢,因为你想知道,为什么你想要消息框然后......
以及a)我只是想知道你是否能做到这一点,以及命令是什么
b)我有一些在消息框出现时可见的基本形状(形状对象).但是,如果没有消息框,则在等待单击按钮时不会暂时中断代码,因此可见的漂亮图像对象会在窗体上生效.
所以我真的不需要消息框,只需要显示对象的临时中断.
谢谢!
我正在使用Access VBA,我正在尝试修改现有代码以添加弹出框.此弹出框是另一种形式,当用户单击此表单上的按钮时,我希望填充基本表单上的文本框.之后弹出窗口消失,然后我需要从基本表单上的文本框中访问该值.
顺序应如下所示:
1)基本表单按钮单击调用模式弹出窗口
2)单击弹出窗口上的按钮将值保存到基本表单的文本框,然后返回控件.
3)基础形式然后使用此值来做某事.
我有一些代码,但它不能正常工作.任何人都可以看到这里遗失的东西,并帮助我纠正?
基本表格
Sub base()
DoCmd.OpenForm "PaperType", , , , , acDialog
MsgBox Me.TheAnswer 'This line gives a null error
End Sub
Run Code Online (Sandbox Code Playgroud)
弹出窗体
Private Sub btnRolls_Click()
'Me.Tag = 1
Forms!ReceiptDetail_sfrm!TheAnswer = 1
Me.Visible = False
End Sub
Private Sub btnSheets_Click()
'Me.Tag = 4
Forms!("ReceiptDetail_sfrm").TheAnswer = 4
Me.Visible = False
End Sub
Run Code Online (Sandbox Code Playgroud) 我有一个带有一个combox框和一个绑定到表的文本框的表单,还有一个显示内容的表和一个保存reocrd的按钮.
我想知道如何在单击保存按钮时创建新记录而不是覆盖当前的记录?
我目前正在使用一个具有RunCommand SaveRecord和Refresh的宏来更新表.
我是否需要使用vba代码来实现我的目标?

我已经基于查询输出创建了表单.我使用了三个组合框和一个列表框.第一个组合框给了我Dept的列表,第二个部门的选择给了我Dept(不同)的位置,第三个给了我(不同的)项目从该位置,然后接下来是显示该项目的一些代码的列表框.问题是我只能从该列表中选择一个代码并在Excel中输出.
如果我想一次选择两个值,我该怎么做?
如果我Multi Select从列表框属性中选择,我可以选择多个值,但我没有得到输出.
我正在开发几个共享大量代码的不同访问项目.现在我所做的是导入模块,只要我是唯一一个正在使用它的模块,这很好,但是对于未来我需要一个更好的解决方案(也比密码保护更好).
分享代码的最佳方式是什么?我有Visual Studio 2013用于此目的.我试过创建一个dll和com对象,但我无法添加这些文件作为Access的引用,我想也许是因为它是.NET,我不太确定.
正如您所看到的,我对这个主题并不熟悉,因此任何提示/链接/流行语都会受到高度赞赏.
谢谢,Yotam
我想调用一个VBCopyFolder使用字符串变量命名的例程,但在执行此操作时会引用"ByRef参数类型不匹配"错误strOldPath.我有点迷失如何做到这一点.
VBCopyFolder定义为:
VBCopyFolder(ByRef strSource As String, ByRef strTarget As String)
Run Code Online (Sandbox Code Playgroud)
而我正在努力的呼吁是:
Dim strOldPath, strNewPath As String
Call VBCopyFolder(strOldPath, strNewPath)
Run Code Online (Sandbox Code Playgroud)
以下工作正常:
Call VBCopyFolder("U:\Database\Data.accdb", "Z:\Backups\Data.accdb")
Run Code Online (Sandbox Code Playgroud)
如何正确格式化此调用?
我有一个MS Access 2016数据库,用户使用用户名密码登录数据库.然后代码将打开一组表单但是有一个我无法找到的错误.
Private Sub btnLogin_Click()
If IsNull(Me.txtBoxUsername) Then
MsgBox "Please Enter Username", vbInformation, "Username Required"
Me.txtBoxUsername.SetFocus
ElseIf IsNull(Me.txtBoxPassword) Then
MsgBox "Please Enter Password", vbInformation, "Password Required"
Me.txtBoxPassword.SetFocus
Else
'proccess the job
If ((IsNull(DLookup("Username", "Staff Table", "Username='& Me.txtBoxUsername.Value &'"))) Or _
(IsNull(DLookup("Password", "Staff Table", "Password='& Me.txtBoxPassword.Value &'")))) Then
MsgBox "Incorrect Username Or Password"
Else
MsgBox "Username & Password Correct"
DoCmd.OpenForm "Branch Form"
DoCmd.OpenForm "Customer Form"
DoCmd.OpenForm "Item Form"
DoCmd.OpenForm "Order Form"
DoCmd.OpenForm "Staff Form"
End If
End If
End Sub …Run Code Online (Sandbox Code Playgroud) 我试图在Access中的vba代码中设置"with"语句,但"With"引用的表单可能会更改.有没有办法在不重写"with"语句两次的代码的情况下执行此操作?好像我可以这样做:
If FooVarible = true then
with forms!form1
else
with forms!form2!subForm1
endif
'have code here
end with
Run Code Online (Sandbox Code Playgroud)
但是没有办法可以编译.
我拆分了当前的数据库,因为它将由多个组使用.拆分时,它带来了我的主表,但没有表格.我试图重新创建一个表单并将表单(从原始数据库)拖放到新的(拆分)数据库,但它不允许它.
是否将数据库拆分为我正在寻找的错误路径?