Tag: Excel的VBA的

如何在Access中使用VBA清除表格?

我想要做的是,在Excel中,使用VBA将数据推送到现有的Access表。 我已经能够做到这一点,但我有一个小小的打嗝。 在我推送数据以进行访问之前,我想清除Access表中的当前数据,所以当来自Excel的新数据进入时,它是Access表中唯一的数据。 我真的不知道如何编写Access的代码,因为这个类已经在VBA for Excel上了。 我尝试了几种不同的方法,每次都不起作用。 例如,看起来应该工作的代码是 DoCmd.RunSQL "DELETE tblName.* FROM CoversheetTableFourthAttempt 但我得到一个错误告诉我定义一个对象。 如果你可以帮助我,我会真的appricate它 我已经把我的代码放在下面供参考。 Sub AccessFourthMonth() Dim cn As ADODB.Connection, rs As ADODB.Recordset, r As Long ' connect to the Access database Set cn = New ADODB.Connection cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; " & _ "Data Source=C:\Users\Kent\Documents\MBA\Winter 2009 Semester\MBA 614\Final Project\shilded\testdatabase.mdb" ' open a recordset Set […]

在types为Double的Excel VBA中发生溢出错误

我遇到了Excel VBA中的溢出错误,无法find解决方法。 虽然微软的文件显示双打的范围应该达到〜1.8E308,但是我得到的数字大大低于这个门槛,我得到了一个溢出错误。 我的代码如下: Public Function Fixed_Sample_Nums(ByVal n As Long, seed As Long) As Double() Dim x() As Double, y() As Double, i As Long ReDim y(1 To n) ReDim x(1 To n) x(1) = (CDbl(48271) * seed) Mod CDbl(2 ^ 31 – 1) For i = 2 To n x(i) = (CDbl(48271) * CDbl(x(i […]

SQL代码在Excel VBA中不起作用

我正在使用Excel 2010 VBA并从PGSQL数据库查询3个表 以下SQL代码在MS ACCESS中完美工作: SELECT user.surname,user.forename,recall.recalldate,telephone.number FROM (user INNER JOIN recall ON user.entity_id = recall.master_id) LEFT JOIN Telephone ON recall.master_id=Telephone.master_id 但似乎并没有转移到EXCEL VBA: Dim RECALL As String RECALL = "SELECT user.surname,user.forename,recall.recalldate,telephone.number " _ & "FROM (user INNER JOIN recall ON user.entity_id = recall.master_id) " _ & "LEFT JOIN Telephone ON recall.master_id=Telephone.master_id " _ Set rs […]

在Access中的链接的Excel表上执行SQL更新

使用Access 2010,我将多个Excel表导入到Access中,并构build了允许用户更新和向表中添加信息的表单。 这些表单通过在VBA中dynamic生成SQL alter和update语句,然后运行DoCmd.RunSQL 。 但是,我希望表中的更改反映在原始Excel表中,因此我删除了Access中的表格,而是将Excel表格链接到Access。 我所有的select查询都继续工作,所以我能够以基本相同的方式访问数据,但是我无法使用DoCmd.RunSQL在VBA中的表上执行SQL语句,这意味着我无法执行SQL更新和改变像我之前做的声明。 我的问题是:我可以在链接的Excel表上执行包括alter和update语句的SQL吗?如果是这样,怎么办?

使用VBA在Excel中使用SQL风格的查询

我有一个大的Excel表单,看起来类似于这个: date | name | age | type 10/10/2012 | James | 12 | man 11/10/2012 | Jane | 50 | woman 12/10/2012 | Freddy | 2 | dog 13/10/2012 | Bob | 23 | man 14/10/2012 | Mary | 34 | woman 我想要做的是创build一个新的,dynamic生成的表格显示所有的人。 在SQL中,这将是一个同步: "SELECT * FROM table WHERE type='men'" 。 我以前从来没有在Excel中使用过VBA(我是一名经验丰富的PHP / Javascript程序员,并且在MS […]

我应该用Python代替VBA吗?

我正在为财务会计模型构build一个演示(可能是一个小应用程序)。 我正在使用VBA / Excel的数据input(例如与表单),计算和结果的演示文稿,我也从VBA程序运行SQL的问题到MS Access数据库。 原则上,这些组件的function相当好(我意识到VBA是有点过时,而不是最平稳)。 我已经这么做了一段时间了(我是一位具有其他语言的古老经验的工程师,虽然从来没有当过程序员),而且在事情上倒下了很多,似乎能够find我所做的编程错误。 然而,当VBA发生错误时,我倾向于对VBA生气,这些错误似乎并不是由我造成的,而是由于VBA造成的不稳定性/缺点。 所以我的问题是,用Python完全没有实现:基本上我可以使用上面描述的Python吗? 你能否给我一个关于Python是否比VBA / Excel更“稳定”和“容易出错”的想法? (正在使用Windows 7)感谢您的build议

在用户窗体之间传递数据

在Excel VBA中,我有一个类似于下面的用户表单,用户input一个ID号,然后在用户表单上显示详细信息: Private Sub btnIDNo_Click() Dim IDNo As Long If txtIDNo.Text <> "" Then If IsNumeric(txtIDNo.Text) = True Then lblError.Caption = "" IDNo = txtIDNo.Text Worksheets("Details").Activate Range("B4").Select While ActiveCell.Value <> "" And ActiveCell.Value <> IDNo ActiveCell.Offset(1, 0).Select Wend If ActiveCell.Value = IDNo Then txtName.Value = ActiveCell.Offset(0, 1).Value txtPhone.Value = ActiveCell.Offset(0, 2).Value Else lblError.Caption = "Cannot […]

非networkingSQL注入

似乎有一些关于SQL注入攻击的歇斯底里。 最近在这里 如何根据另一个字段中的查找值返回一个字段中的值 如果我在Excel中创build一个连接到Access数据库的macros,我真的不得不关心SQL注入吗? 这不是在networking上,它在我的办公室使用(你们记得桌面?)。 我不担心我的同事要破坏我。 如果他们足够聪明的做一个SQL注入,是不是足够聪明来破解我的加载项密码,只是改变代码?

使用Python编写MS Officemacros?

我最近把它作为一个项目来教自己如何用Python进行编程。 总的来说,我必须说我对它印象深刻。 在过去,我一直坚持使用VBA进行编程,主要是为MS Excel(但在MS Access和Word中也有一些),并努力想方设法使Python能够轻松完成一个命令。 我想知道是否有合理的方法来利用编程能力和轻松的Python,同时利用Office中的各种工具(主要是Excel)?