Tag: 访问

在Excel中连接不同的数据库

假设我有一个Access数据库“ADB”和一个Excel工作簿“EWB”。 ADB有一个名为“ATable”的表,其中包含一些列,这些列包括一个名为“A_ID” EWB有一个名为“EWorksheet”的工作表,其中包含“E_ID”和“ECol” 现在,我想知道如何创build一个Excel工作表,它将来自ADB的ATable.A_ID和来自EWB的EWorksheet.ECol结合在一起,如果A_ID = E_ID则返回ECol。 所以在SQL中,它应该看起来像这样: SELECT ATable.A_ID, EWorksheet.ECol FROM ADB.ATable, EWB.EWorksheet WHERE ATable.A_ID = EWorksheet.ECol 当然,我希望数据是dynamic的,这样数据将在刷新时更新。

Excel VBA将数组variables插入到访问中的单个字段中

在我的项目中,我试图将excel表格中的无限制条目保存到数据库(访问)中。 我正在尝试使用vba来这样做。 但是,因为我不知道条目会有多长,我不能在数据库中创build这么多的字段来适应未知数量的条目。 我不能将一个数组variables插入表中的一个字段。 我怎样才能做到这一点? 说我有下面。 Dim SN(100) As String SN(0)=123 'value of each entry SN(1)=2412 'so on and so many entries 然后在SQL语句中, "INSERT INTO [TableName] ([FieldName]) Values (SN)" 它会说运行时错误“13”types不匹配。 有没有办法数据库字段可以接受一个列表或数组作为数据types? 所以当我调出数据时,我可以使用索引来调用列表中的variables?

语法错误INSERT INTO语句访问数据库

不知道是否已经find这个特定的错误,但是我看不到这个INSERT INTO语句中我的语法不正确: 我已经把它分成插入和值,以便于阅读。 这是由VBA创build的string,然后传递给连接。 我得到的具体错误是-2147217900(8004e14)“INSERT INTO语句中的语法错误” INSERT INTO AS_Processing_2_2 (ImportDate, [Month], [Year], [Plant Name], [Plant Number], PDFReference, a_VAR_FIRSTPROCWOGSMH, a1_BPMH_FIRSTPROCWOGSMH, a2_EFF_ON_44FIRSTPROCWOGSMH, a3_FIRSTPROCWOGSMH_RANK, a4_WB_BPMH_FIRSTPROCWOGSMH, b_BPMH_BY_DEPT_REC_WOG_FIRSTPROCWOGSMH, b1_KILL_BPMH_BY_DEPT_FIRSTPROCWOGSMH, b2_EVISWOG_BPMH_BY_DEPT_FIRSTPROCWOGSMH, b3_WB_EVIS_BPMH_BY_DEPT_FIRSTPROCWOGSMH, c_PRCT_LINE_EFFCY_FIRSTPROCWOGSMH, d_VAR_GIB_HARV_EFFCY_FIRSTPROCWOGSMH, d1_LIVGIZ_HIS_LB_MH_FIRSTPROCWOGSMH, d2_LABORperLB_C__FIRSTPROCWOGSMH, d3_STAFF_per_LINE_FIRSTPROCWOGSMH, e_TOTAL_GIB_RECVR_FIRSTPROCWOGSMH, e1_LIVER_25_FIRSTPROCWOGSMH, e2_GIZ_HT_22_FIRSTPROCWOGSMH, f_NECKSALESnMMat64_FIRSTPROCWOGSMH, g_NBRLines_REC_FIRSTPROCWOGSMH, g1_EVIS NBR_FIRSTPROCWOGSMH, h_WKLY_RUNTIME_SHIFT_FIRSTPROCWOGSMH, i_TYPEPLANTSHIFTS_FIRSTPROCWOGSMH, j_GIBHARVPAY_DEPT_FIRSTPROCWOGSMH, k_LiveBirdWght_FIRSTPROCWOGSMH, k1_RangeLBW_FIRSTPROCWOGSMH) VALUES ('7/5/2016 4:00:43 PM', '12', '15', 'EUFAUL', '3060', '2.2', '13', '290', '-0.06', […]

通过Access VBA查看Excel加载项?

如何通过Access VBA从Excel加载项中检索常量(或其他项目)? 我正在使用Office 2013.我可以打开Excel实例,并显示加载项为已安装,但我不知道如何引用模块(我有密码)或模块内的项目(例如,一个常数)。 谢谢。

从Excel中selectExcel中的偏移量

我正在从Access数据库中的数据创build一个Excel文件。 我目前正在尝试做的是偏移我在Excel中做的select从Access中,我不断收到错误。 ExcelWS.Range(Range("H6"), Range("H6").End(xlDown)).Offset(0, -1).Select ExcelWS是一个Excel。 工作表对象。 我的目标是从G6中select工作簿的末尾。 但是,不是G列中的每个单元格都被填充,因此来自单元格G6的简单End(xlDown)只会让我部分通过该文件。 也就是说,列H中的所有单元格都被填充,所以我可以从单元格H6中完成一个End(xlDown)。 从那里,我想把我的select向左移动,给我所需的范围在列G选定。 上面的代码是大约两个小时的search结果,并尝试吨类似的代码的不同组合。 不过,我仍然收到一个错误。 运行时错误“1004”: 对象'_Global'的方法'范围'失败 奇怪的是1/10倍,我会收到这个愿望的结果。 剩下的时间我收到上述错误。 我感觉好像我的问题与从Access中运行这行代码有关,但是这是目前我完成此任务的唯一方法,因为我还有其他依赖于能够从Access执行的操作。 任何帮助将不胜感激,如果有任何更多的信息,我可以给我尽我所能。 谢谢。

在Access中编码时,每个Excel函数之前需要的Excel.application对象variables

我有一些代码访问打开.htm文件,将其保存为.xlsx然后操纵数据一点,然后导入到Access中的表中。 我用它来使用 Dim XLapp as Excel.Application Set XLapp = New Excel.Application 那么我可以在Excel中完成所有的操作,而不必将XLapp放在每个命令前面。 但问题是,我创build一个新的Excel实例,每次运行代码,遇到对象'_global'失败“的错误”的方法'工作表'每隔一次运行“(有人已经提到这个问题),所以我用 Public Function GetExcelObject() As Object On Error Resume Next Dim xlo As Object ' Try to get running instance of Excel Set xlo = GetObject(, "Excel.Application") If xlo Is Nothing Then Set xlo = CreateObject("Excel.Application") End If Set GetExcelObject = xlo End […]

使用excel或access中的规范自动将TXT文件导入到xls

我有约900个CSV文件,所有这些都是从跟踪软件导出的。 不幸的是,这个软件根据帧数据input大约52行左右的总结数据,这些数据有许多标题。 我正在寻找的是一种方法: 1)打开csv文件 2)将摘要数据保存为单独的电子表格,文件名为“Original_Summary” 3)将逐帧数据(包含标题)保存到单独的Excel文件中,原始文件名称作为工作表的新名称。 以前,我已经用〜124个文件手动完成了这个剪切/粘贴操作,但是由于文件数量已经非常多,所以我不确定手动这样做是最好的select。 我有另一个脚本,我已经写入,将这些excel文件作为单独的表格导入到Access中,但是现在我需要一种方法将它们从CSV中传输,并将顶部的所有额外摘要数据移动到单独的文件中。 有没有办法可以做到这一点? 谢谢! Sub ImportManyTXTs_test() Dim strFile As String Dim foldername As String Dim ws As Worksheet strFile = Dir("C:\Users\Jared\Desktop\Processed\Text\*.txt") Do While strFile <> vbNullString Set ws = Sheets.Add With ws.QueryTables.Add(Connection:= _ "TEXT;" & "C:\Users\Jared\Desktop\Processed\Text\" & strFile, Destination:=Range("$A$1")) .Name = strFile '.FieldNames = True '.RowNumbers = False '.FillAdjacentFormulas […]

自动筛选器VBA帮助“错误1004”

我试图过滤一个名为“销售一级”的列名,它包含了大量的销售水平,我只需要“美洲,全球服务提供商,WW分销”,表中有从A到Y的列,共43295条logging。 这里是我的代码是抛出错误1004“自动过滤范围类失败的方法” Dim objXLApp As Object Dim xlApp As Object Set xlApp = CreateObject("Excel.Application") xlApp.Activesheet.Range("$A1:$Y43295").AutoFilter Field:=16,_ Criteria1:=Array("Americas", "GLOBAL SERVICE PROVIDER", "WW Distribution"),_ Operator:=xlFilterValues 我在这个函数中有其他代码,这是其中之一。

MS Access数据库需要更新的版本

与MS Access有关,目前我每次打开访问accdb文件时都遇到这个错误。 它说:“你试图打开的数据库需要更新版本的MS Access”。 我完全明白,基于这一点,我必须更新它。 但问题是,每当我使用这个文件之前,一切都很好,或从未发生过。 所以如果我不得不更新,它没有任何意义。 我到目前为止的假设: 发生这种情况是因为访问和excel之间的ODBC连接中的一些错误会影响数据库。 因为我使用这个访问权限是我的Excel主数据库。 任何人都有相同的经验 你的帮助对我来说意味着很多,因为如果我不能打开这个,我必须从头开始重新编码:((备份也有相同的问题,但其他访问文件可以顺利打开) 谢谢,

访问VBA GetOpenFileName不起作用

我有一个访问数据库,在Windows 7办公室2010年工作正常,但在Windows 10办公室2013年一个代码是行不通的。 这是有问题的代码。 Private Sub Text0_Click() Dim s As String s = MyGetOpenFileName Me.Text0.Value = s 结束小组 在Windows 7中,当我点击文本框的窗口打开。 但在Windows 10中,如果我点击没有任何反应。