如何计算EAN-14的校验码?
我正在尝试在 vba 访问中验证 EAN 14 UPC 代码.我试图在网上找到它,但没有运气.我刚刚找到了 EAN 8 和 EAN 13.所以,我只是尝试将其编码为类似于 EAN 13,如下所示: If Len(Barcode) = 14 Then 'do the check digit for EAN 14 for anything 14 long checkDigitSubtotal = (Val(Mid(Barcode, 2, 1))) _ + (Val(Mid(Barcode, 4, 1))) _ + (Val(Mid(Barcode, 6, 1))) _ + (Val(Mid(Barcode, 8, 1))) _ + (Val(Mid(Ba
138 2022-08-09
编程技术问答社区
VBA改变矩形的背景颜色-访问
所以我正在尝试更改 Access 中矩形的背景色.我知道您可以轻松地做到这一点 Box1.BackColor = RGB(0, 0, 0),但是我想在文本框中输入一个值,然后在您更新文本框后立即显示该颜色值. 我认为以下方法会起作用,但它没有. 文本框1 = 0, 0, 0 Dim P1 as String P1 = "RGB(" + Textbox1.text + ")" Box1.Backcolor = P1 如何动态更改背景颜色? 解决方案 你可以 split 文本,通过 int 运行条目并将其提供给 RGB: Dim A As Variant A = Split(Textbox1.text,",") Box1.BackColor = RGB(Int(A(0)),Int(A(1)), Int(A(2)))
224 2022-08-09
编程技术问答社区
为什么这个vba表重新链接的代码会导致错误3219?
我正在尝试重新链接 MS Access 数据库中的表,该数据库与下面运行的代码不同;这样我就可以将修复数据库用作各种“补丁"...... 我已经修改了我找到的代码 这里,以便它重新链接由“修复/补丁数据库"打开的数据库中的表 在我运行代码之前,我确保两个数据库都是打开的,以便一个可以修复另一个,以便更轻松地自动应用修复程序. 但是,当我运行代码时,当我到达读取 tdfLinked.RefeshLink 的行时,它会刷新链接表,我得到一个 Runtime error '3219' Invalid Operation 错误. Sub FixDB() Call LinkTable("somelinkedTble", "SOMESERVER\NAMED_SQL_INST32", "Database1", "Some_Schema.somelinkedTble", True) End Sub Function LinkTable(LinkedTableAlias
210 2022-08-09
编程技术问答社区
无法从Access DB查询中获取数据到我的VB程序中
到目前为止,这是我的代码...我有 2 个 DateTimePickers,其中用户选择一周的第一天和一周的最后一天,一旦选择了这两个,我想计算每天的工作时间并将它们相加,这样我就可以显示工作时间选定的天数间隔. My Work 表包含一个 idEmployee、Date、ArrivalTime、DepartureTime 和一个显示当天工作小时数的计算列 (Hrs_worked). 当我运行程序时,会弹出一个消息框并显示“从类型 'DBNull' 到类型'String' 的转换无效"或“条件表达式中的数据不匹配"我是否需要将 datetimepickers 值更改为字符串值? 我正在使用 Access 数据库开发 Visual Basic Express 2010 Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.
58 2022-08-09
编程技术问答社区
如何找到主键序列和主键的最大值?
我知道这个问题有点傻,我需要运行这些查询以查看值是否不同步,但我收到类似“关系不存在"的错误: SELECT MAX(the_primary_key) FROM the_table; SELECT nextval('the_primary_key_sequence'); 我有一个名为“Audit"的表,主键列为“auditID".当我运行第一个查询时,我得到了结果: SELECT MAX('auditID') FROM "Audit"; max --------- auditID (1 row) 但最大值应该超过 10000. 然后我运行第二个查询,我得到错误“关系“the_primary_key_sequence"或“Audit_auditID_seq"不存在".如何检查是否存在任何主键序列? 错误: select setval('Audit_auditID_seq', 171832, true); ERROR: relation "au
394 2022-08-09
编程技术问答社区
在创建新记录之前,检查记录是否有重复的记录
我是这个网站的新手,也是 vba 代码的新手.另一个用户发布了这个问题,答案代码似乎是我正在寻找的代码.我想检查几个字段是否有重复数据,标记一条消息并转到记录.我希望这段代码能做到这一点.除非我添加自己的字段来检查我得到错误代码 3077 - 语法错误,我不知道如何修复它.任何帮助,将不胜感激.出现此错误的最高行是向下的第 3 行.我正在使用 access 2010.我不确定如何链接到该问题,但有人建议我应该就我的问题提出一个新问题. Private Sub Form_BeforeUpdate(Cancel As Integer) Dim rst As Recordset Set rst = Me.RecordsetClone rst.FindFirst "[ID] " & Me.ID & " AND [TitleText] = " & Me.TitleText & " AND [UnitCode] = " & Me.UnitCode & " AND [
116 2022-08-09
编程技术问答社区
从互联网上的路径获取文件列表
我正在自动化一个项目,每个月我都需要访问一个网站并从那里复制一个文件.我可以复制文件,问题是它们的名称如下所示,所以我无法知道当月要复制哪个文件. 文件名2015011023549.zip 文件名2015021922876.zip 有没有办法从网站获取文件列表? 解决方案 您将包含文件列表的页面(参见内嵌注释)下载到本地文件,然后解析该文件以查找可能的文件名候选: Option Compare Database Option Explicit Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" ( _ ByVal pCaller As Long, _ ByVal szURL As String, _ ByVal szFileName As String, _ ByVal dwReserved As Long, _
58 2022-08-09
编程技术问答社区
错误3346,试图INSERT INTO,两个连续的表
我有这两张表是 MS Access : lkpSchemaPIT: | UID | lkpSchemaTitleEng | |-----|--------------------------| |--1--|---------Title1-----------| |--2--|---------Title2-----------| ... lkpSchemaPITChronology : | ID | UID | PUID | Sort | Level | DateStart | DateEnd | |----|-----|------|------|-------|-----------|---------| |--0-|--1--|--0---|---5--|--2----|---Now()---|--NULL---| ... 第一个表只包含节点,我将在访问树视图中放入这些节点.我使用第二个表来构建树,但也跟踪节
134 2022-08-09
编程技术问答社区
VBA。从HTML表中抓取信息
我正在尝试从 html 表中提取信息.我想将表中的每个元素添加到集合中.这是我目前所拥有的. Dim htmlTable As Object Dim coll2 As Collection Set coll2 = New Collection Set IE = New InternetExplorerMedium With IE '.AddressBar = False '.MenuBar = False .Navigate ("PASSWORDED SITE") .Visible = True End With Set htmlTable = IE.Document.getElementById("ctl00_ContentPlaceHolder1_gvExtract") Set tableItem = IE.Document.getElementsByTagName("td") With coll2 For Each tableItem In htmlTable.innerHT
94 2022-08-09
编程技术问答社区
串联富文本字段(HTML)并在Access表格上显示结果
我有一个访问数据库,它处理“文章"和“项目",它们都是文本内容.一篇文章由几个项目组成.每个项目都有一个富文本字段,我希望通过连接其项目的所有富文本字段来显示文章的文本内容. 我编写了一个 VBA 程序,它连接项目富文本字段并将其提供给我的表单上的独立 TextBox 控件(Textbox.Text = 结果字符串),但它不起作用,我收到一条错误消息,提示“此属性参数太长".如果我尝试将单个文本字段输入到 Textbox 控件中,我会收到另一个错误,指出“无法更新记录集",我不明白,这是关于什么记录集? 每个项目字段通常是这样的(我使用方括号而不是“",因为否则帖子的显示不正确)[div][font ...]Content[/font] [/div]",还包括“[em]"标签. 在我的问题面前,我有几个问题: 1) 如何将 HTML 字符串输入到独立的 Textbox 控件中? 2) 可以连接这些 HTML 字符串还是应该修改标签,例如只有一个“[
174 2022-08-09
编程技术问答社区
如何使用Access VBA在textBox.Setfocus之后选择文本框中的所有文本
当我单击(或双击)Access 表单时,我需要选择它的文本框中的所有文本.我尝试了以下代码,但不成功: Me.txt_CompraPreco.SelStart = 0 Me.txt_CompraPreco.SelLength = Len(Me.txt_CompraPreco) 提前致谢. 解决方案 可以使用如下代码.如果它不起作用,请在代码的第一行放置一个断点.如果它没有在您的断点处停止,那么您的事件将无法识别. Option Compare Database Option Explicit Private Sub txt_CompraPreco_Click() If Len(Me.txt_CompraPreco & "") = 0 Then Exit Sub Me.txt_CompraPreco.SelStart = 0 Me.txt_CompraPreco.SelLength = Len(Me.txt_CompraPreco) End Sub
186 2022-08-09
编程技术问答社区
用Access VBA的If语句来改变报告字段的背面和字体颜色
当报表上填充了“S"时,我正在尝试在报表上用白色粗体字体突出显示报表上的字段.这会使该字段中的所有记录保持红色.请帮忙! Private Sub Report_Activate() If Me![PULL STATUS] = "S" Then Me![PULL STATUS].BackColor = vbRed Me![PULL STATUS].FontBold = True Me![PULL STATUS].ForeColor = vbWhite End If End Sub 解决方案 你的代码应该包含在的On Format事件中报告的>详细信息部分.当您设置 BackColor、FontBold 和 ForeColor时,它会一直保持这种状态,直到再次更改为止. 因此,如果不正确,您需要一个 else 语句来执行相反的操作.比如: Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer
120 2022-08-09
编程技术问答社区
创建Outlook电子邮件时,无论使用何种换行命令,.Body文本都是双倍行距。
我正在通过 VBA 创建一个 Outlook 电子邮件,该电子邮件通过单击 Access 表单按钮运行.对于 .Body,我使用以下串联字符串设置我的“strBody"字符串对象: strBody = "First Line of text here." & vbNewLine & _ vbNewLine & _ "Second Line of text here." & vbNewLine & _ Chr(187) & "Third Line of text here." & vbNewLine & vbTab & _ Chr(187) & "Fourth Line of text here." & vbNewLine & vbTab & _ Chr(187) & "Fifth Line of text here." & vbNewLine & vbTab & vbTab & _ Chr(187) & "Sixth Line of te
248 2022-08-09
编程技术问答社区
我怎样才能通过VBA将我当前的Access数据库带到前台?
我正试图根据下面的几行让我的访问数据库进入前台.我不确定为什么它不起作用,或者是否有更好的方法来做到这一点. 根据我的阅读,这应该可行: Access.Visible = False Access.Visible = True 但实际上并没有把数据库放在前面. 编辑以获取更多信息: Private Sub Form_Open(Cancel As Integer) getStrUserName = Environ("username") dbName = "myDB.accdb" ' database name versionChckDB = "versionCheckDB.accdb" ' version check db name strServer = "C:\My\Path\to\Server" ' server location string strDesktop = "C:\My\Path\to\Local" ' d
120 2022-08-09
编程技术问答社区
MS Access运行时错误3464
我正在为我的工作开发一个数据库,我正在尝试在 vb 编辑器中使用 sql 插入和更新表中的值这是我的代码: Option Compare Database Private Sub Übernehmen_Click() Dim strSQL1 As String Dim strSQL2 As String Dim strSQL3 As String Dim ArtikelNr As Integer Dim Stück As Integer Dim Lieferant As String Dim Bestellnr As Integer Dim EkPreis As String Dim Mwst As String Dim Einkaufsort As String Dim GhIndex As String Dim Datum As String Dim Uhrzeit As St
200 2022-08-09
编程技术问答社区
在vba访问中循环浏览记录并增加值
我正在尝试遍历表中具有部件号和匹配部件号的记录,并在 pos 字段中增加一个值.我之前问过一个问题(Object variable or With block variable没有设置 Access vba) 具有相同的项目,但用于过程的不同步骤(运行查询).我还没有在 Access 中找到解决这个问题的问题,但是我从这个问题中得到了一些指示:循环访问 MS Access 中所有记录的代码.现在,我正在尝试编写代码来循环遍历记录并增加 pos 字段中的值. 将运行的查询: SELECT CTOL.ID, CTOL.BOM_PART_NAME, CTOL.CII, CTOL.[PART FIND NO], CTOL.CSN, CTOL.AFS, CTOL.EQP_POS_CD, CTOL.LCN, CTOL.POS_CT, CTOL.SERIAL_NO, CTOL.PART_NO_LLP, [CTOL_Asbuilt].[PART-SN], [CTOL_Asbuilt].[PART
84 2022-08-09
编程技术问答社区
结合更新和选择SQL语句
创建 SQL 语句的 MS Access VBA 脚本: 我有一个 SQL 语句,它在新表 SATable 中派生两​​个字段: SQLScript = "SELECT [DATA OUTPUT TABLE].* INTO SATable" SQLScript = SQLScript & " FROM [DATA OUTPUT TABLE]" SQLScript = SQLScript & " WHERE ((([DATA OUTPUT TABLE].[Journal Voucher ID]) In (SELECT [DATA OUTPUT TABLE].[Journal Voucher ID]" SQLScript = SQLScript & " FROM [DATA OUTPUT TABLE]" SQLScript = SQLScript & " GROUP BY [DATA OUTPUT TABLE].[Journal Voucher ID]" SQLScript = SQ
284 2022-08-09
编程技术问答社区
MS Access VBA SQL-将一条记录从一个表中插入到另一个表中
你好 Stackoverflow 社区, 下面是我在 Access VBA 中作为用户窗体上的单击按钮的代码.如您所知,我对 VBA 的了解非常有限.SQL 但试图修改我公司的一个数据库.我有两个重复的表(PrintTable 和 ManPowerCalculator),我试图将 ManPowerCalculator 表中的每个项目插入到 PrintTable 中,其中用户窗体上的 EmplID 输入框 = ManPowerCalculator 表中的那个. CurrentDb.Execute "INSERT INTO PrintTable VALUES (*) SELECT (*)FROM ManPowerCalculator WHERE EmplID # = " & Me.EmplID " 另外我没有定义任何变量,也许它会提高效率.感谢您花时间阅读本文. 解决方案 这应该做的工作: CurrentDb.Execute "INSERT INTO PrintTa
230 2022-08-09
编程技术问答社区