Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB.NET: VB .NET

TK [03.06.2003 13:33:44]

#

Haluaisin avata VB-ohjelmalla Excelin ja manipuloida sitä sieltä käsin. Mikäköhän tässä koodissa on vikana( VB 6 koodi, jota en saa toimimaan VB .NET versiossa) Osaisiko joku auttaa. Lisäksi olisiko jollain koodivinkki miten saan kopioitua VB- Ohjelmalla tekstitiedoston Excel sheettiin

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim xlApp As Excel.Application
        Dim xlBook As Excel.Workbook
        Dim xlSheet As Excel.Worksheet
        xlApp = CreateObject("Excel.Application")
        xlBook = xlApp.Workbooks.Add    'tätä riviä ei tunne
        xlSheet = xlBook.Worksheets(1)

        xlSheet.Activate()
        xlSheet.Cells(1, 2) = 5000
        xlSheet.celss(2, 2) = 75
        xlSheet.Cells(3, 1) = "total"

        xlSheet.Range("B3").Formula = "=Sum(R1C2:R2C2)"

        xlSheet.Application.Visible = True
    End Sub
End Class

InvalidCo [03.06.2003 14:02:35]

#

Mä en ollenkaan ole kuullutkaan tollaisista xlApp parametreistä, mutta kokeileppa SendKeys:sillä manipuloida.

-PC-Master-

TK [05.06.2003 10:02:52]

#

Tarvis saada tällanen interop importattua, mutta mitenkäköhän se onnistuis? Mulla on visual basic .NET ja office 2000 käytössä. auttakaa joku miten saan edes aukaistua sen excelin VBn kautta please.. Referensseihin oon lisännyt ms Excel 9.0 tool libraryn ja office 10.0 tool libraryn

Imports Microsoft.Office.Interop

Niko [05.06.2003 18:06:43]

#

xlBook = Ctype(xlApp.Workbooks.Add, Excel.Workbook)

TK [06.06.2003 08:51:08]

#

Vieläkin se valittaa tolla rivillä että:

Old format or invalid type library

sama seuraavalla, vaikka lisäis

xlSheet = CType(xlBook.Worksheets(1), Excel.Worksheet)

Olisko mitään vinkkiä mitä kirjastoa se kaipaa tai mikä on vikana

TK [09.06.2003 12:18:34]

#

Jees ratkaisu löytyi. Jos kohtaat tollaisen Old format or invalid type library ongelman automatisoidessa exceliä se johtuu bugista maa-astetuksissa tällainen hässäkkä saa sen toimimaan

System.Threading.Thread.CurrentThread.CurrentThread.CurrentCulture = _      System.Globalization.CultureInfo.CreateSpecificCulture("en-US")

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta