![]() |
Copy an array into an ADO recordset?
I have the following function in which I am attempting to copy an array into
an ADO recordset directly from the current sheet in Excel. This generates an error. Can this even be done? If so, how? Can someone please correct my function? Private Function ADOCopyArrayIntoRecordset(argArray As Variant) As ADODB.Recordset Dim rsADO As Object Dim lngR As Long Dim lngC As Long Set rsADO = CreateObject("ADODB.Recordset.2.8") For lngR = 1 To UBound(argArray, 1) For lngC = 1 To UBound(argArray, 2) rsADO.Fields(lngC - 1).Value = argArray(lngR, lngC) Next lngC rsADO.MoveNext Next lngR End Function Thanks much in advance. |
Copy an array into an ADO recordset?
"quartz" wrote in message ... I have the following function in which I am attempting to copy an array into an ADO recordset directly from the current sheet in Excel. This generates an error. Can this even be done? If so, how? Can someone please correct my function? Private Function ADOCopyArrayIntoRecordset(argArray As Variant) As ADODB.Recordset Dim rsADO As Object Dim lngR As Long Dim lngC As Long Set rsADO = CreateObject("ADODB.Recordset.2.8") For lngR = 1 To UBound(argArray, 1) For lngC = 1 To UBound(argArray, 2) rsADO.Fields(lngC - 1).Value = argArray(lngR, lngC) Next lngC rsADO.MoveNext Next lngR End Function Thanks much in advance. I think you should use Set rsADO = CreateObject("ADODB.Recordset") Do you get an error message? /Fredrik |
Copy an array into an ADO recordset?
"quartz" wrote in message ... I have the following function in which I am attempting to copy an array into an ADO recordset directly from the current sheet in Excel. This generates an error. Can this even be done? If so, how? Can someone please correct my function? Private Function ADOCopyArrayIntoRecordset(argArray As Variant) As ADODB.Recordset Dim rsADO As Object Dim lngR As Long Dim lngC As Long Set rsADO = CreateObject("ADODB.Recordset.2.8") For lngR = 1 To UBound(argArray, 1) For lngC = 1 To UBound(argArray, 2) rsADO.Fields(lngC - 1).Value = argArray(lngR, lngC) Next lngC rsADO.MoveNext Next lngR End Function Thanks much in advance. I think the code should be something like this Private Function ADOCopyArrayIntoRecordset(argArray As Variant) As ADODB.Recordset Dim rsADO As Object Dim lngR As Long Dim lngC As Long Set rsADO = CreateObject("ADODB.Recordset") For lngR = 1 To UBound(argArray, 1) rsADO.AddNew For lngC = 1 To UBound(argArray, 2) rsADO.Fields(lngC - 1).Value = argArray(lngR, lngC) Next lngC Next lngR Set ADOCopyArrayIntoRecordset = rsADO End Function |
fixed object will be move
i insert filter in my worksheet, and i made to each cell hyperlink the
problem is when i select items from filter appear to me this message (fixed object will move) "Fredrik Wahlgren" wrote: "quartz" wrote in message ... I have the following function in which I am attempting to copy an array into an ADO recordset directly from the current sheet in Excel. This generates an error. Can this even be done? If so, how? Can someone please correct my function? Private Function ADOCopyArrayIntoRecordset(argArray As Variant) As ADODB.Recordset Dim rsADO As Object Dim lngR As Long Dim lngC As Long Set rsADO = CreateObject("ADODB.Recordset.2.8") For lngR = 1 To UBound(argArray, 1) For lngC = 1 To UBound(argArray, 2) rsADO.Fields(lngC - 1).Value = argArray(lngR, lngC) Next lngC rsADO.MoveNext Next lngR End Function Thanks much in advance. I think the code should be something like this Private Function ADOCopyArrayIntoRecordset(argArray As Variant) As ADODB.Recordset Dim rsADO As Object Dim lngR As Long Dim lngC As Long Set rsADO = CreateObject("ADODB.Recordset") For lngR = 1 To UBound(argArray, 1) rsADO.AddNew For lngC = 1 To UBound(argArray, 2) rsADO.Fields(lngC - 1).Value = argArray(lngR, lngC) Next lngC Next lngR Set ADOCopyArrayIntoRecordset = rsADO End Function |
All times are GMT +1. The time now is 10:53 AM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com