![]() |
Automation error -2147417848 on windows 98 while using excel in VB ( works fine in XP)
When I am using Excel automation in VB6 to change some values in excel
files, it works fine on Windows XP machine. I used Excel 8.0 object Library. but I tested this Exe on windows 98 it started giving me Automation Error -2147417848 . After debugging I found exact place where error is coming. Follwing is the code used in this application Dim xl As Excel.Application Dim wb As Excel.Workbook Dim ws As Excel.Worksheet Dim rg As Excel.Range Set xl = CreateObject("Excel.Application") Set wb = xl.Workbooks.Open(destination, False, False, , OpenPwd, ModifyPwd) Set ws = wb.Worksheets(1) Set rg = ws.UsedRange.Find("<<") While Not rg Is Nothing temp = ws.Cells(rg.Row, rg.Column).Formula ws.Cells(rg.Row, rg.Column).Formula = PutData(temp, rs) ws.Cells(rg.Row, rg.Column).Formula = ws.Cells(rg.Row, rg.Column) Set rg = ws.UsedRange.FindNext(rg) Wend It gives error on following line Set rg = ws.UsedRange.Find("<<") Please some one tell, if this can be solved on windows 98. |
Automation error -2147417848 on windows 98 while using excel in VB
Hi Sudhanshu,
I got the same issue as you do, at least that is my understanding. If this is the same error as I had, then here what you can do. Instead of using xl.Workbooks.Open, try to use xl.Workbooks.Add. This works for me that is this should fix the Automation problem for Windows 98. Jack Wang "Sudhanshu Jain" wrote: When I am using Excel automation in VB6 to change some values in excel files, it works fine on Windows XP machine. I used Excel 8.0 object Library. but I tested this Exe on windows 98 it started giving me Automation Error -2147417848 . After debugging I found exact place where error is coming. Follwing is the code used in this application Dim xl As Excel.Application Dim wb As Excel.Workbook Dim ws As Excel.Worksheet Dim rg As Excel.Range Set xl = CreateObject("Excel.Application") Set wb = xl.Workbooks.Open(destination, False, False, , OpenPwd, ModifyPwd) Set ws = wb.Worksheets(1) Set rg = ws.UsedRange.Find("<<") While Not rg Is Nothing temp = ws.Cells(rg.Row, rg.Column).Formula ws.Cells(rg.Row, rg.Column).Formula = PutData(temp, rs) ws.Cells(rg.Row, rg.Column).Formula = ws.Cells(rg.Row, rg.Column) Set rg = ws.UsedRange.FindNext(rg) Wend It gives error on following line Set rg = ws.UsedRange.Find("<<") Please some one tell, if this can be solved on windows 98. |
All times are GMT +1. The time now is 09:57 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com