Microsoft Access 2016是一个数据库管理系统和应用程序开发工具。
“Make Trusted Document”警告直到退出才会触发,导致“Can't exit now”错误
你们大家,我快要疯了。我是一个完美主义者,我不明白为什么会出现安全警告:“你想让这个文件成为可信文档吗?”直到我...
MS Access VBA - 打开表单并从计算文本框中获取值
这是一个更复杂的项目,但我设法将问题范围缩小到以下情况。 在访问表单 (fSearch) 中,有一个按钮 (bCheck)。 bCheck_Click 事件 代码旨在开放...
我使用此代码在 VBA Access 中选择代码编号的产品并测试是否发现重复的保存产品。 将 db 调暗为 dao.database 将 rs 调暗为 dao.recordset 设置数据库=当前数据库 Sql_string = "选择
如何在 XML selectNodes 和 selectSingleNode 中使用命名空间
我正在将 VBA Access 应用程序从 Win7 移植到 Win11,我认为应该有一种方法可以做得更优雅。我必须阅读这个 .xml 文件: 我正在将 VBA Access 应用程序从 Win7 移植到 Win11,我认为应该有一种方法可以做得更优雅。我必须阅读这个 .xml 文件: <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Document xsi:schemaLocation="urn:iso:std:iso:20022:tech:xsd:camt.053.001.08 camt.053.001.08.xsd" xmlns="urn:iso:std:iso:20022:tech:xsd:camt.053.001.08" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <BkToCstmrStmt> <GrpHdr> <MsgId>MSG-C053-231229020607-01</MsgId> <CreDtTm>2023-12-29T14:06:07.386+01:00</CreDtTm> <AddtlInf>RECONSTRUCTION</AddtlInf> </GrpHdr> <Stmt> <Id>STM-C053-231229020607-01</Id> <ElctrncSeqNb>999999</ElctrncSeqNb> <CreDtTm>2023-12-29T14:06:07.386+01:00</CreDtTm> <FrToDt> <FrDtTm>2023-11-29T00:00:00.000+01:00</FrDtTm> <ToDtTm>2023-12-28T23:59:59.999+01:00</ToDtTm> </FrToDt> <CpyDplctInd>DUPL</CpyDplctInd> <Acct> <Id> <IBAN>CHxxxxxxxxxxxxxxxxx</IBAN> </Id> <Ccy>CHF</Ccy> <Ownr> <Nm>Entity</Nm> </Ownr> <Svcr> <FinInstnId> <Nm>Name of Bank</Nm> </FinInstnId> </Svcr> </Acct> <Bal> <Shortened> </Shortened> </Bal> <Bal> <Shortened> </Shortened> </Bal> <Ntry> <Shortened> </Shortened> </Ntry> </Stmt> </BkToCstmrStmt> </Document> 在Win7中使用\Windows\system32\msxml6.dll,这段代码做得很完美: Sub ReadCamt053(strDPFE As String) Dim bankDownload As MSXML2.DOMDocument Set bankDownload = New MSXML2.DOMDocument bankDownload.validateOnParse = True bankDownload.Load strDPFE Dim groupHeader As IXMLDOMNode For Each groupHeader In bankDownload.selectNodes("Document/BkToCstmrStmt/GrpHdr") Debug.Print "Erzeugungsdatum(CreDtTm)", groupHeader.selectSingleNode("CreDtTm").Text Next groupHeader Dim accountStatement As IXMLDOMNode For Each accountStatement In bankDownload.selectNodes("Document/BkToCstmrStmt/Stmt") gIBAN = accountStatement.selectSingleNode("Acct/Id/IBAN").Text gSequenzNr = accountStatement.selectSingleNode("ElctrncSeqNb").Text ReadStatementEntries accountStatement.selectNodes("Ntry") Next accountStatement End Sub 对于Win11 \Windows\SysWOW64\msxml6.dll 的移植,选择了XML,这需要使用DOMDocument60 而不是DOMDocument。使用 Google,我从 MS 找到了 this,并假设我必须添加一个命名空间才能读取 XML。我这样做了,但我无法找到一种优雅的方式来添加 groupHeader.selectSingleNode("CreDtTm").Text 的名称空间 - groupHeader.selectSingleNode("/ns:CreDtTm").Text 导致错误 91,使用 groupHeader.selectSingleNode("/bk:Document/bk:BkToCstmrStmt/bk:GrpHdr/bk:CreDtTm").Text 有效,但似乎很难阅读...... Sub ReadCamt053(strDPFE As String) Dim bankDownload As MSXML2.DOMDocument60 Set bankDownload = New MSXML2.DOMDocument60 bankDownload.validateOnParse = True bankDownload.SetProperty "SelectionNamespaces", "xmlns:ns='urn:iso:std:iso:20022:tech:xsd:camt.053.001.08'" bankDownload.Load strDPFE Dim groupHeader As IXMLDOMNode For Each groupHeader In bankDownload.selectNodes("/ns:Document/ns:BkToCstmrStmt/ns:GrpHdr") Debug.Print "Erzeugungsdatum(CreDtTm)", groupHeader.selectSingleNode("CreDtTm").Text '<--- Next groupHeader Dim accountStatement As IXMLDOMNode For Each accountStatement In bankDownload.selectNodes("Document/BkToCstmrStmt/Stmt") gIBAN = accountStatement.selectSingleNode("Acct/Id/IBAN").Text gSequenzNr = accountStatement.selectSingleNode("ElctrncSeqNb").Text ReadStatementEntries accountStatement.selectNodes("Ntry") Next accountStatement End Sub 我对 .XML 的了解非常有限(尝试错误)。所以这是我的两个问题: 有没有比 groupHeader.selectSingleNode("/bk:Document/bk:BkToCstmrStmt/bk:GrpHdr/bk:CreDtTm") 更好的方法 有关这个名称空间的整个内容看起来相当笨拙。有没有办法在不不断重复名称空间的情况下做到这一点 - 我确实只有这个单一的名称空间,所以这似乎是一个巨大的杀伤力......旧的东西完成了工作,看起来好多了...... 1- 如果添加命名空间,则修改代码如下: For Each groupHeader In bankDownload.selectNodes("ns:Document/ns:BkToCstmrStmt/ns:GrpHdr") Debug.Print "Erzeugungsdatum(CreDtTm)", groupHeader.selectSingleNode("ns:CreDtTm").Text Next groupHeader For Each accountStatement In bankDownload.selectNodes("ns:Document/ns:BkToCstmrStmt/ns:Stmt") gIBAN = accountStatement.selectSingleNode("ns:Acct/ns:Id/ns:IBAN").Text gSequenzNr = accountStatement.selectSingleNode("ns:ElctrncSeqNb").Text ReadStatementEntries accountStatement.selectNodes("ns:Ntry") Next accountStatement 或 2- 从文档中删除命名空间,使 <Document xsi:schemaLocation="urn:iso:std:iso:20022:tech:xsd:camt.053.001.08 camt.053.001.08.xsd" xmlns="urn:iso:std:iso:20022:tech:xsd:camt.053.001.08" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 变为 <Document> 并像以前一样使用原始代码: Const s1 = "xsi:schemaLocation=""urn:iso:std:iso:20022:tech:xsd:camt.053.001.08 camt.053.001.08.xsd""" Const s2 = "xmlns=""urn:iso:std:iso:20022:tech:xsd:camt.053.001.08""" Const s3 = "xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance""" Dim bankDownload As New MSXML2.DOMDocument60 bankDownload.validateOnParse = False bankDownload.Load Path_To_XML_File Dim xml As String xml = bankDownload.xml xml = Replace(xml, s1, "") xml = Replace(xml, s2, "") xml = Replace(xml, s3, "") bankDownload.loadXML xml Dim groupHeader As IXMLDOMNode For Each groupHeader In bankDownload.selectNodes("Document/BkToCstmrStmt/GrpHdr") Debug.Print "Erzeugungsdatum(CreDtTm)", groupHeader.selectSingleNode("CreDtTm").Text Next groupHeader Dim accountStatement As IXMLDOMNode For Each accountStatement In bankDownload.selectNodes("Document/BkToCstmrStmt/Stmt") gIBAN = accountStatement.selectSingleNode("Acct/Id/IBAN").Text gSequenzNr = accountStatement.selectSingleNode("ElctrncSeqNb").Text ReadStatementEntries accountStatement.selectNodes("Ntry") Next accountStatement
这里是 Microsoft Access 的新手 - 所以这可能很简单。 我有3张桌子: 供应商 命令 发票 我想要实施的流程工作是首先设置我的供应商,然后添加订单并...
MSaccess VBA 在计算字段的 oncurrent 之后发生了一些事情
我的表单上有一个计算字段,该字段不在基础表中。仅用于显示目的。 字段名称为 TotalMain 该字段的源是子表单页脚中的计算字段。
如何修复 vb.net Visual Studio 2022 中的“ConnectionString 属性尚未初始化”?
我正在使用 Visual Studio .NET Framework 和 vb.net 编程语言,我已经努力修复我的错误大约一周了。我使用 MS Access 数据库 (.accdb) 作为我的数据库。 模块1.vb: 我...
为什么在输入第二个字母时,名字中的第一个字母会自动删除; VBA 7?
这是我们输入值的地方 = txtSearchCenter 这就是结果 = lstPersonnelSearch 选项比较数据库 Private Sub txtSearchCriteria_KeyPress(KeyAscii As Integer)...
我需要在 VBA Access 中向表中的列添加值。 但列是数字和查找(来自其他表)和多个值 我尝试了很多命令: 私有子 buttRec_Click() Dim db 作为 DAO.Da...
如何将 Access Richtext(HTML 格式)移至 PowerPoint TextFrame 并保留格式?
我正在 Access 数据库中使用 VBA 代码构建 Powerpoint 演示文稿。我需要能够将用户在 Access RichText 文本框中输入的文本粘贴到 Powerpoint 幻灯片 TextFram 中...
如何在 MS Access 中显示日期时间 SQL Server 列(包括毫秒)。现在它指定 mm/dd/yy hh:nn:ss 格式。有什么方法可以添加毫秒(它们在 SQL Server 表中)? 我
所以假设我有一个客户,有 2 个学生和 2 个导师,每个导师授课 2 小时。 两位导师都必须在周一来。这意味着星期一的总时间将为 4 小时。 如果...
MS Access:使用连续表单时,如何运行按每条记录的 ID 进行筛选并在文本框中显示结果的查询?
这是我的场景: 我有一个我管理的项目的数据库。在此数据库中,我有一个项目表 (tblProjects) 和一个热门注释表 (tblHotNotes),如下所示: tbl项目:
我的表单对于 Mircosoft Access 表单没有刷新?
下面是VBA代码 选项比较数据库 私有子表单_AfterUpdate() 我刷新 结束子 私有子 MedicalCondition_AfterUpdate() 如果 Me.MedicalCondition = True 那么 '...
在 MS-Access 现代图表的 X 轴上显示时间值时出现问题
我正在尝试在包含大约 2800 到 5600 行数据的 Access 报告中的现代图表上绘制趋势线。我已经能够成功绘制所述数据点,但我需要 X...
在 Microsoft Access 现代图表的 X 轴上显示值时出现问题
我正在尝试在包含大约 2800 到 5600 行数据的 Access 报告中的现代图表上绘制趋势线。我已经能够成功绘制所述数据点,但我需要 X...
我在VBA(Access Database)中创建了一条SQL插入语句。 我创建了一个子程序,在单击按钮时运行,并期望将值插入到指定的表中。 我收到语法错误。
这里是 Microsoft Access 的新手,所以这可能很简单。 我有3张桌子: 1 与供应商 1 有订单 1 有发票 我想要实施的流程工作首先是设置我的供应商,...
MS Access 2016 中的多用户锁定(插入虚拟条目以添加新项目)
在我管理的数据库中,要创建新的库存商品,它会添加一个虚拟条目,然后在常用表单中打开此新条目进行编辑。请参阅下面的代码。 该代码将一直有效,直到您获得数据...
我有 2 张表:预约表和患者表。一名患者可以有多次预约。我创建了一个表单(单一表单),显示 ApptDate(在约会中)和患者信息(来自患者...