Advertisement

02.25.2004 at 11:35AM PST, ID: 20897887
[x]
Attachment Details

RUNTIME ERROR 13 :  TYPE MISMATCH ???

[x]
The Solution Rating System

With so many solutions, how can you tell which solutions are most likely to help you and which ones are not? To provide you with a tool to use, we rate our solutions based on various elements that most accurately determine if a solution is a quality solution. To explain what factors affect the solution rating, here are the elements we take into consideration when formulating our solution rating.

  • The Grade of the Solution
  • The Zone Rank of the Expert Providing the Solution
  • The Number of Author and Expert Comments
  • The Number of Experts Contributing
  • The Feedback of the Community

Your Input Matters
Because of the way the system is set up, the most important variable in this equation is you. As a member of Experts Exchange, you are able to cast your vote on the quality of the solutions in regard to how complete, accurate, helpful and easy to understand each solution is. When you provide your feedback, each rating is adjusted accordingly. So, if you see a solution that has a poor rating that you think is a good solution, let us know by rating it. As you do, the rating will be adjusted and will become more accurate for other members of our site.

If you have any suggestions that you would like to make for our rating system, please ask a question in the Suggestions Zone of Community Support.

Thank you!

9.0
Tags:

error, 13, type, mismatch, runtime

VB6 SP4
WIN 2000
EXCEL 2000
ACCESS 2000

I keep getting an error on the line below. as indicated.
I HAVE TRIED CHANGING THE STRINGS TO VARIANTS BUT IT DOES NOT HELP....

I'm trying to import(map)  data from Access to Excel via listbox field selections.
This field go to that column  etc.............


'  ACCESS TO EXCEL

' reopen access
Dim statement As String
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim db_name As String
Dim Copycells As Variant
'db_name = Text2.Text
db_name = Text1.Text
    ' Open a connection.
    Set conn = New ADODB.Connection
    conn.ConnectionString = _
        "Provider=Microsoft.Jet.OLEDB.4.0;" & _
        "Data Source=" & db_name & ";" & _
        "Persist Security Info=False"
    conn.Open
Set rs = New ADODB.Recordset
rs.CursorType = adOpenKeyset
rs.LockType = adLockOptimistic


' ==============      reopen excel   Destiniation     =============================
'EFile = CommonDialog1.FileName
   Text2.Text = EFile ' efile is a variable
     Set oDest = CreateObject("Excel.Application")
       oDest.Visible = True
         oDest.workbooks.Open EFile
' ==============      reopen excel        =============================
rs.Open (List1), conn, , , adCmdTable ' all records

        Dim lastSourceRow As Long
         Dim lastDestRow As Long
   
         lastSourceRow = rs.RecordCount    'oSource.SHeets(List1.Text).UsedRange.Rows.Count
         lastDestRow = oDest.SHeets(List4.Text).UsedRange.Rows.Count
 '        ReDim Copycells(lastSourceRow - 1) As Variant
'        oDest.Visible = True
' NEW CODE **********************************************************
'Dim CopyText As String
Dim CopyText As Variant
Dim str1 As String
Dim sourcedest As String
Dim x2 As Variant
'Dim strUnknown As String
'Dim strNext As String
' start Excel to Access import

Do While Not rs.EOF
x2 = lastDestRow + 1
lastDestRow = x2
  oDest.ActiveCell.Offset(1, 0).Range("A1").Select
 oDest.ActiveCell.EntireRow.Insert
   For x = 1 To lvwMap.ListItems.Count
            str1 = lvwMap.ListItems.Item(x).ListSubItems(1).Text
           sourcedest = lvwMap.ListItems.Item(x).ListSubItems(3).Text
    CopyText = rs.Fields(str1).Value
' ERROR ON THE LINE BELOW  RUNTIME ERROR 13 TYPE MISMATCH
    oDest.SHeets(List4.Text).Range(oDest.workbooks(1).SHeets(List4.Text).Cells(x2, CInt(sourcedest)), oDest.workbooks(1).SHeets(List4.Text).Cells((x2), CInt(sourcedest))).Value = CopyText
   Next x
   x2 = x2 + 1
      rs.MoveNext
         Loop
   rs.Close
   conn.Close

' NEW CODE **********************************************************
        MsgBox "Acces Data Import is Completed !"


Answered By: Ark
Expert Since: 02/02/2000
Accepted Solutions: 1372
Ark has been an Expert for 8 years 11 months, during which he has posted 6164 comments and answered 1372 questions. Ark is just one of 2179 experts in the Visual Basic Programming Zone. 4 experts collaborated on this answer, which was graded an "A" by the asker.
 
 
20081119-EE-VQP-48