我使用下面的VBA代码将数据从Excel表导入到SQL server。代码是一次插入一行,而my tables包含数千行。
为了提高导入速度,我希望一次导入1.000行。如何修改代码,以便为每个执行插入1.000行?
我在VBA中不是很熟练,在这个URL上找到了代码:
Sub Button1_Click()
Dim conn As New ADODB.Connection
Dim iRowNo As Integer
Dim sCustomerId, sFirstName, sLastName As String
With Sheets("Sheet1
我想从工作簿中的数据向表中插入记录,使用VBA插入没有问题,但问题是重复。
仅当数据库中不存在Excel中的记录时,我才能插入该记录?
这就是我目前所拥有的。
另外,我是否可以更新已经存在的记录,或者这是否需要另一个模块?
Sub Button1_Click()
Dim conn As New ADODB.Connection
Dim iRowNo As Integer
Dim sequipid, stype, sname As String
With Sheets("Sheet1")
'Open a connect
我有VBA代码,运行sql服务器存储的proc,将数据导入excel。
Excel数据:
Id Division Department Scale
1 North IT 8.5
2 South Finance 8.0
3 North Finance 8.0
4 West IT 8.5
5 East Finance 8.0
6 South
我在Azure中有一个SQL-Server,希望通过VPN隧道使用VBA将数据从Excel传输到它。它可以工作,但在801个条目中,有时320被发送,有时324,但始终在300到350之间,永远不会超过。它们按照正确的顺序传输,就像在excel文件中一样。我一点也没搞错。刚才在SQL表中看到,那里并不是所有的条目。我试过几次,我的同事们也用同样的结果。我的代码是:
Sub Importer(ByVal tableName As String, ByVal importQuery As String, pass As String)
Dim con As Object
我有一个包含以下代码的Excel工作簿-
Sub Button1_Click()
Dim conn As New ADODB.Connection
Dim iRowNo As Integer
Dim sFirstName, sLastName As String
With Sheets("Sheet1")
'Open a connection to SQL Server
conn.Open "Provider=SQLOLEDB;" & _
"Dat
我有10个Excel文件,它们通过OLEDB连接到Server,我需要每天手动地刷新它们。当我刷新它们时,我需要插入密码。我试图创建一个宏来实现这个过程的自动化,但是我没有成功。我执行此功能是为了自动化我的一本工作簿:
Sub updateABC()
Workbooks("Teste").Connections("SQL Server_Azure1").OLEDBConnection.Refresh
End Sub
Excel请求Server登录的密码。有什么方法可以使用vba自动输入这个密码吗?
谢谢。
Tech - asp.net 3.5、Sql server 2005
我已经为我的for应用程序集成了aspnet成员资格。
我正在添加一些导入excel文件的用户(成员)。
那么,如何在aspnet成员资格表中添加该用户用户和角色呢?
注意-我有SP,这是用来添加从上传的excel文件在数据库中的成员,我已经写了插入trriger的成员表。
可能重复:
我刚刚开始学习VBA,我成功地从SQL Server中创建的DB导入数据,现在我正在尝试将数据从Excel导出到同一个DB中。
以下功能很好:
Dim cnState As ADODB.Connection
Dim sSQL As String
Set cnState = New Connection
With cnState
.Provider = "SQLOLEDB"
.ConnectionString = "server=.\SQLEXPRESS; Trusted_Connection=Yes; database=SIM_PROJ"
.O
我希望能够将数据从Excel工作表加载到SQL服务器数据库。
我可以在VBA中一次使用循环完成这一任务,但是如果我能够更进一步并进行连接,那就太好了。在这个表单上发布的代码看起来很理想,但我无法让它工作。
我认为我很困惑的地方是让VBA正确地识别excel中的表。在代码Remou中,只要在Sheet2 2$上有一个联接,那么无论如何定义Excel数据,我都会得到“无效的对象名”错误。理想情况下,我想要使用的数组将定义为excel中的一个表。
在VBA中需要什么才能识别在联接中使用的表?任何建议/建议都非常感谢。
Dim cnTrans As New ADODB.Connection
我是第一次接触excel VBA。我有一个要求,即我必须将表值从sql server 2005复制到excel工作表。我已经在谷歌上搜索并编写了上述要求的代码(如下所示)。
在这个excel表格中,有一组固定的行来显示图例和日期。这些行应在打印数据库/表值后显示。当我使用.CopyFromRecordset将记录集中的记录复制到excel工作表时,显示图例和日期的行被数据库/表值覆盖。请告诉我如何执行插入行而不是复制。或者有没有什么方法可以实现上述目标。
-代码
Sub GETSQLSERVERDATA()
Dim Cn As ADODB.Connection
Dim Server_Name
这是我的设想。我有一个Access 2010数据库分成前端和后端,使用VBA代码处理我的数据。直到上个星期,当我做每月的批量插入时,我没有任何问题。插入是通过将csv文件作为Excel电子表格读取并将数据插入访问表(并不是所有的数据都将被插入,因此每一行必须单独处理)来完成的。当我周五运行时,我突然开始随机获取3073个错误(操作必须使用可更新的查询)。它可以发生在数据库中的任何一个表上。
我在错误处理程序中使用debug和设置断点重新运行,并发现如果从断点移回查询执行命令并逐步执行它,则不会得到错误。下面是一个示例插入:
INSERT INTO OtherMeasures (HapId, S
使用Excel VBA将数据从MS SQL中拉入Excel。它只有2,000行和30列,但是执行.CopyFromRecordset行需要超过10分钟。 我认为罪魁祸首是这样一个事实,当它从SQL粘贴到Excel时,会发生一些自动格式化。我注意到自动换行文本以及一些行和列的大小。不知道怎么把它关掉。 任何帮助都将不胜感激! Sub ADOExcelSQLServer()
' Objects 2.x library
Dim Cn As ADODB.Connection
Dim Server_Name As String
Dim Databas
我想知道您是否可以检查我在VBA (Excel)中的代码,以便从SQL Server数据库中检索数据,并将其插入工作表中。
它根据附加的图片返回一个错误。
Sub ConnectionTest()
Dim conn As ADODB.Connection
Set conn = New ADODB.Connection
Dim constr As String
constr = "Provider=sqloledb;Data source=USO-YEGANEH\SQL2008;Initial Catalgo=USO_Final;User Id=sa;Password=12
我正在尝试将工作表中的日期插入到SQL中的表中。工作表中日期的原始源来自到SQL的连接,并且日期字段已设置为强制转换(Interview_date as date),但是一旦填充了工作表,我就需要插入回sql中的另一个表中。当我这样做时,我在表的日期字段(即日期时间)中得到1900-01-01 00:00:00.000。我提取到excel日期格式是yyyy-mm-dd,这与我插入到的Sql表上的格式相同。
我在VBA中尝试了以下插入,有问题的3个字段是sdate_confirmed、sdate_interview和rundate。
我已经将这些字段声明为
Dim sForename As St
我有一个VBA循环,它将大约12万行插入到SQL表中。
我读过,对大型数据集使用循环是相当耗时的(我发现,这需要超过10分钟才能完成)
如果有人能向我提出建议,也许可以批量插入这些数据作为一个范围或什么?
谢谢你们!
Sub export_to_sql()
Dim conn As New ADODB.Connection
Dim RowNo As Long
Dim C1, C2, C3, C4 As String
Dim wbk As Workbook
Dim strFile As Variant
Dim shtname As String
ChDir "xxx"
strFi
谢谢你的帮助,大卫。我根据您建议的链接进行了更改。我是否遗漏了什么,因为我仍然收到相同的消息
[Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server does not exist or access denied.
我正在使用VBA将数据输入到SQL server中。代码运行得很好。我使用的是SQL Server 2014。数据库位于我的服务器上。这些计算机对我的计算机/服务器有安全的、经过身份验证的远程访问吗?用户通过Excel .xlsm文件输入信息。
这就是问题所在。我正在将我的Excel/VBA .xlsm文件发送给登录到