使用其中一个新排序顺序创建的数据库即使安装了Service Pack 2(SP2)也无法在Access 2007中打开.
我需要将Access数据宏从我的测试数据库传输到我的生产数据库.有谁知道怎么做?
我知道将表从一个accdb转移到另一个accdb也会传输数据宏,但在我的情况下这不是一个选项.我也知道我可以在生产accdb中手动重新创建它们,但这使我容易出错,并且需要将生产数据库关闭的时间比脚本传输方案要长.
如果我不得不这样做一次就不会那么大,但我需要在开发项目的过程中多次这样做.
我已经尝试将表导出到xml,但不包括数据宏.
请注意,我在这里询问Access 2010 数据宏,而不是常规的Access宏.
我有Access 2010表单,其中有一个ComboBox cmbSubTopic,列出了两列(SubTopicID和SubTopic).组合框绑定到包含的字段SubTopicID.SubTopicID组合框中的列是隐藏的,它只显示SubTopic.当用户SubTopic从下拉列表中选择a 时,相应的SubTopicID内容存储在表中.我为表单的on load事件编写了一些VBA代码,以便在表中查找SubTopicID并SubTopic在ComboBox中选择相应的.我目前的代码是这样的:
Set rsST = dbs.OpenRecordset(strSqlst)
For i = 0 To Me.cmbSubTopic.ListCount - 1
If Me.cmbSubTopic.Column(0, i) = rsST.Fields("SubTopicID").Value Then
Me.cmbSubTopic.SetFocus
Me.cmbSubTopic.Selected(i) = True
Exit For
End If
Next i
Run Code Online (Sandbox Code Playgroud)
这给出了错误说:
您输入的文本不是列表中的项目
我也试过用这个:
Me.cmbSubTopic = Me.cmbSubTopic.Selected(i)
Run Code Online (Sandbox Code Playgroud)
这将选择ComboBox中的项目,但它也会将I的值写入ID我不想要的表的字段中.
我在MS Access中做了一些工作,我需要在一堆字段中附加一个前缀,我知道SQL,但它似乎在Access中看起来不一样
基本上我需要这个翻译成一个可以访问的命令:
UPDATE myTable
SET [My Column] = CONCAT ("Prefix ", [My Column])
WHERE [Different Column]='someValue';
Run Code Online (Sandbox Code Playgroud)
我上下搜索,似乎找不到简单的翻译.
是否可以在消息框中添加超链接?我正在尝试做这样的事情:
MsgBox "Sorry, but you have an out-of-date database version. Please redownload via the batch file to ensure that you have the latest version. Contact the administrator of this database or your manager if you need help." & vbCr _
& vbCr _
& "Your current database version is " & CurrentVer & " which may be out of date. The current database version prescribed on the network share is " & FileVer & ". They must match in order …Run Code Online (Sandbox Code Playgroud) 我想知道,如果有什么办法,如何在访问sql中实现这样的东西.
select * from my_table where column_name like ('ABC%', 'MOP%');
Run Code Online (Sandbox Code Playgroud)
我尝试使用这个:https://stackoverflow.com/a/1387797/1784053但这似乎不适用于Access.
有没有办法如何实现像基于动态条件的多重调节?这意味着,我不能使用OR没有UNION因为我的组条件是动态的.
类似的问题:我如何在LIKE运算符中引入多个条件
我一直在开发Access 2010数据库应用程序,我们称之为Skill.accdb.我正处于我想开始部署它的阶段,以便用户可以开始使用它并同时继续开发.我一直在读
谈论分裂,编译,安装等,但它们在实际的程序步骤上非常简短.
我已将我的数据库应用程序拆分为后端和前端:Skill_Back.accdb和Skill_Front.accdb.后端位于网络共享驱动器上,一些用户拥有前端的副本.到目前为止一切都那么好,特别是如果我从来没有做过任何更多的开发.但我现在还不清楚如何在不打扰"现场"后端的情况下继续开发前端.
如何让前端的开发版本指向后端的虚拟版本,以便我不会搞乱实时版本?然后,当我希望发布新版本的前端时,如何让它再次指向后端的实时版本?
如果我重新拆分(即再次使用Move Data | Access Database工具)指向一个尚未存在的虚拟后端,我被告知所有表现在都是空的 - 不是我想要的.如果我重新分裂以指向活动后端的副本,我会被问到是否要替换它 - 也不是我想要的.如果我这样做,我会再次告诉"此数据库中没有表.后端数据库将为空." 然而我看到它(前端)仍然指向现场后端!
我错过了什么重要的概念/工具/程序?(我不是要求编译或运行时或构建安装程序 - 这些都是以后的问题.)
附录
继续按照下面的正确答案中的建议,我发现了其他一些描述程序的文章:
我需要在Access数据库中保存Word中的格式化文本.
到目前为止,我已经设法找出如何在访问字段中存储格式化文本(在表中创建备注字段并将文本格式设置为富文本).正在搜索SO我还没有遇到如何将所述文本从单词传输到Access的解决方案.
我知道这是可能的,因为如果您手动执行此操作,只需复制和粘贴信息即可.
我的问题是,如何使用VBA将格式化文本从word复制到表中的字段?
通过实验我创建了以下内容来测试它.到目前为止没有成功......
Sub GetComments()
'Imports Analyst Comments from Excel files als OLE Objects.
'---------------------------------
'Access Variables
Dim dbsFundDB As DAO.Database
Dim rsComments As DAO.Recordset
Set dbsFundDB = CurrentDb
Set rsComments = dbsFundDB.OpenRecordset("tblFunds")
'Word Variables
Dim doc As Word.Application
Dim dcmt As Word.Document
Dim sectn As Word.Section
Dim obCommentText As Object
Dim sAnalystText As String
'Open New Word File
Set doc = New Word.Application
doc.Visible = True
Set dcmt = doc.Documents.Open(sPathTemplate)
Set sectn = dcmt.Sections(1)
sectn.Range.Select
Selection.InsertFile FileName:="myfile.rtf", …Run Code Online (Sandbox Code Playgroud) 背景:
拆分访问数据库,最多两个用户.后端位于映射驱动器上的两台计算机之一,前端是本地的.计算机通过wifi连接到路由器.(我试图让他们通过电缆连接电脑失败)
编辑:此问题现在发生在单个用户环境中.
问题:
这只发生在一个特定的形式上.它的基础表有一个多值字段.
问题1:我们的情况是编辑一个字段,但只要焦点移动到另一个字段,编辑就会恢复为原始值.
问题2:编辑一个字段时,其他一些字段将获取先前显示的记录的值.
注意:从一个记录到另一个记录的导航操作如下:
Me.RecordsetClone.FindFirst "ID = " & cmbLocateRecipientID
Me.Bookmark = Me.RecordsetClone.Bookmark
Run Code Online (Sandbox Code Playgroud)
问题只发生在偶然.
这在Access方面是一种非常奇怪的行为,因此当用户首次报告问题时,我确信他们错误地将信息输入到另一条记录中.但是,他们已经向我展示了现场发生的问题.
关闭并重新打开表单可以解决问题.但是,它们显然不能以这种方式工作.
我无法在我的开发机器上重现这个问题.
ID | Start of range | End of range
------------------------------------
ID1 | Ok-000001 | Ok-000009
ID1 | Ok-000010 | Ok-000014
ID1 | Ok-000015 |
ID1 | Ok-000016 | Ok-000018
ID1 | Ok-000037 | Ok-000042
ID2 | Ok-000043 | Ok-000045
ID2 | Ok-000046 | Ok-000052
Run Code Online (Sandbox Code Playgroud)
从上面的示例数据库记录中,我想生成一个具有以下格式的报告:
ID1 Ok-000001 - Ok-000018, Ok-000037 - Ok-000042
ID2 Ok-000043 - Ok-000052
Run Code Online (Sandbox Code Playgroud)
在实际数据库中,有554条记录,其中包含1,559个唯一ID.
我会接受任何和所有的指导.我知道我需要按ID分组.我知道我应该忽略"Ok-"并且只使用数值.我不知道如何查看下一条记录中的"范围开始",看它是否是当前记录中"范围结束"的延续.
ms-access-2010 ×10
ms-access ×8
access-vba ×3
sql ×3
vba ×3
combobox ×1
deployment ×1
hyperlink ×1
macros ×1
messagebox ×1
ms-word ×1
multi-user ×1
word-vba ×1