Tag: access vba

用选定项目的Recordet信息加载用户窗体(如何加快速度)

我有一个很小的问题,但是仍然是一个问题,它使我疯狂! 我有一个用户窗体(VBA,使用Excel作为前端和访问作为后端),它具有文本框和列表框。 它所做的就是根据用户在列表框中的select,用来自Access数据库的信息填充文本框。 因此,如果用户select具有“001”代码的条目,它将转到Access数据库,logging并填充UserForm。 以下是代码: Private Sub LtaInversiones_Click() Dim rcon As Recordset Dim sql As String sql = "SELECT * FROM INVERSIONES WHERE CODIGO = "_ & LtaInversiones.List(LtaInversiones.ListIndex, 0) Set rcon = BD.OpenRecordset(sql) With rcon CmbCodigo.Text = !Codigo CmbTipo.Text = !TIPO TxtTitulo.Text = !TITULO TxtMonto.Text = !Monto DTFCompra.Value = !FECHACOMPRA DTFVencimiento.Value = !FECHAVENCIMIENTO CmbPeriodicidad.Text = […]

访问VBA复制从logging集范围对象错误-2147417856

我的数据库使用ODBC连接来连接到SQL服务器。 访问代码通过一个10万年的SQL表(大约570万行)运行,并以10,000年的数据增加,然后在Excel中通过一个macros运行,然后重复10k年的下一个增量。 第一个一万年的时间大约有420k +行出口到excel下一个一万年(10,001-20,000年)有大约450k +行 假设每10万年逐渐增加3万行, 当达到60,001-70,000增量有时代码将废话并给出一个 '从logging集对象范围方法复制失败代码-2147417856'错误 解决方法是点击debugging,然后点击播放button,然后代码继续。 因为这个修复工作,我的印象是访问越来越重处理,只是胡乱随机(我不知道还有什么可能是错的) 我试图安装一个error handling修复程序来重复发生错误的代码部分,并且error handling程序发现错误,但错误仍然发生。 更新:在我input之前,我进入了正在吐出的Excel文件,并在macros内按Ctrl +暂停,然后点击播放button,然后再次按Ctrl +暂停然后点击播放button。 然后我按下debugging,然后单击编译VBA项目,然后保存工作簿。 然后再次访问时,没有错误。 老实说,我不知道发生了什么,所以任何想法或修复这将是有益的。 (虽然好像我已经解决了这个问题)

访问 – 循环遍历表,并在第二个表中查找外键,并将多个字段连接到原始表中

访问 – 我们有一个备注字段[DESCRIPTION_OF_REQUEST]的表格。 另一个表logging特定请求发生的任何date更改(对于可交付成果)。 一对多的关系。 从报告的angular度来看,我们需要按月导出(如Excel)请求,并希望将所有可交付date的所有更改连接到注释字段。 [tblRequests] RegProjID DateOfRequest DESCRIPTION_OF_REQUEST ———- ————- ———————- 116 06 Oct 2015 "Stability of broken ampoule." 和 [tblDateChanges] RegProjChangeID RegProjID DateOfDateChange UserName ReasonForChange ————— ——— —————- ——– ————— 355 116 19 Jan 2016 dskelly "Duplicate Request from Simon Wong CPP Request already in process Original Request # 13661" 1549 116 […]

Access vba的Excel小计有什么方法?

我有一个Access 2010应用程序,我运行SQL查询并将结果输出到Excel。 我正在使用Excel小计命令来创build小计。 这工作正常,但总行只有文本(“XXX计数”)是粗体和值不粗体。 我们的客户希望整个行大胆。 我已经尝试了几个方法没有成功。 我如何做小计中的整个行? 所以这里是我现在有: 这是正确的,除了我需要这样的所有行5,8,16和17粗体: 这里是我的代码来创buildAccess文件的Excel文件(除了大胆的问题,这所有的作品): Public Sub ExportToExcel(query) Dim appXL As Object Dim wbk As Object Dim wksNew As Object Set appXL = CreateObject("Excel.Application") Set wbk = appXL.Workbooks.Add Set wksNew = wbk.Worksheets("Sheet1") Dim cn As ADODB.Connection Dim rs As ADODB.Recordset Set appXL = CreateObject("Excel.Application") appXL.Visible = True Set wbk = […]

将多个Excel文件导入到一个Access表时如何添加文件名

我正在使用Access VBA将多个Excel文件导入到我的Access数据库中。 这将是一个每月20-50个文件和10-60Klogging的过程。 我需要包含一个“应用程序名称”,它不包含在电子表格文件本身中,而是包含在它的文件名中。 而不是手动将应用程序名称添加到Excel文件,我想通过我的VBA代码添加它。 我不熟练使用Access,并通过关于如何完成的search将大部分内容拼凑在一起。 这个“工作”,但是当我在大批量运行时,我收到错误“运行时错误3035”:超出系统资源。 当我删除添加文件名(循环logging)的部分,它运行良好。我认为这是因为步骤没有有效地sorting?任何帮助,将不胜感激。 Public Function Import_System_Access_Reports() Dim strFolder As String Dim db As DAO.Database Dim tdf As DAO.TableDef Dim fld As DAO.Field Dim rstTable As DAO.Recordset Dim strFile As String Dim strTable As String Dim lngPos As Long Dim strExtension As String Dim lngFileType As Long Dim strSQL As String […]

VBA崩溃访问时着色Excel单元格

我一直在为MS Access数据库添加一个function,但是我对于我的代码的哪一部分可能导致崩溃感到困惑。 在我的机器上,代码从不崩溃。 但是,在其他机器上(包括访问的非运行时副本),一个小小的更改会导致应用程序完全崩溃。 以下代码在Excel中格式化导出的查询: Option Compare Database Public Function format_status_report(ByVal filename As String, ByVal path As String) Dim obj_excel As Excel.Application Dim wb As Excel.Workbook Dim ws As Excel.Worksheet Dim rng As Range Dim tbl As ListObject Const LAST_COL = 10 last_col_char = Chr(LAST_COL + 64) Set obj_excel = New Excel.Application On Error GoTo […]

使用VBA访问数据的其他方法

所有的好日子。 在过去的8个小时里,我正在寻找在Access 2007中的一个数据透视select,因为我们的Citrix帐户(OWC10.dll)中没有提供参考dll 。 所以我尽了我的一切努力研究解决这个问题的方法,但到目前为止我什么都没有,所以我觉得是时候给点帮忙。 我在这里是一个原始数据的样本.. 这是我正在寻找的最终结果,一个数据透视表,其中,当然,可以在一个窗体(最佳解决scheme)或提取的Excel文件中查看。 所以基本上,我需要显示: 他们每天工作多less时间 他们每天工作多less 我尝试了TRANSFORM语句/交叉表 ,我得到错误,有太多的行使它成为一个列,因为我有20,000+行 – 30天/月*工作的人。 – DISTINCT他们,但我不知道如何? 我没有在我们的系统中的.dll文件,所以正常的pivoting是没有问题的。 有谁知道任何替代品,可以给我这些显示结果?

运行Access-VBA脚本时,新计算机永久冻结

我在Excel中有一个广泛的VBA脚本,它将一个访问表分成几个Excel文件,并在Excel中进行一些格式化和计算。 这些表格有几百行,我反复循环遍历整个表格,有些excel计算使用SUMIF函数等,因此需要一段时间来计算。 脚本没有在性能方面进行优化,而是在10分钟内完成了旧的Dualcore Win10 32Bit(德文版,英文版)Notebook。 我升级到了一个更新的笔记本(Win10英文版,64位,i5 Quadcore),但是当我尝试使用相同的Access文件运行相同的脚本时,笔记本永久冻结。 我甚至无法中止剧本,等了一个多小时后,还没有完成,我必须硬重置我的电脑。 有一些Windows系统级别的设置,我可能错过了调整? 每当我回到我的旧笔记本使用相同的文件/脚本它运行没有问题。

在Excel中将一个字段从访问导出到特定的单元格

我想从一个表/查询名称从访问特定的单元格。 我有一个在其他单元格中有大量数据的检查表,顶部有顶部的人名。 我想要一个可以点击的button,打开THAT文件,并通过VBA插入所需的名称。 我知道如何用VBA来做这个带有书签的word文档,但是现在确定如何在excel中定义一个单元格的“书签”。 这是我迄今为止。 Private Sub Cmdopentarget1_Click() Dim xl As Excel.Application Dim wbTarget1 As Workbook Dim qdfquerytest As QueryDef Dim rsquerytest As Recordset Set qdfquerytest = CurrentDb.QueryDefs("query1") Set qdfsecondquery = CurrentDb.QueryDefs("query2") Set rsquerytest = qdfquerytest.OpenRecordset() Set rssecondquery = qdfsecondquery.OpenRecordset() Set xl = CreateObject("Excel.application") xl.Visible = True Set wbTarget1 = xl.Workbooks.Open("C:\Users\Owner\Dropbox\Target1.xlsx") 'Set wbTarget1 = xl.Workbooks.Open("C:\Users\Dennis\Dropbox\Target1.xlsx") […]

从密码保护的站点上的access.accdb文件进行Excel查询

因此,我可以使用POST请求和MSXML2.ServerHTTP60对象,在Excel VBA中提供Intranet密码等,从我们公司的SharePoint站点下载.accdb文件。 凉! 有了这个下载的文件,我可以使用这样的代码运行查询: Dim connXXX As ADODB.Connection Dim aQuery As String Dim p As String Dim res As Object Dim connStr As String p = ThisWorkbook.Path & "\testBASE1.accdb" connStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & p aQuery = "SELECT Header1 FROM Table1 WHERE ID = 4" Set connXXX = New ADODB.Connection connXXX.Open connStr Set res = […]