Forum: ASP.NET |
Thema:
Re: Excel-File erstellt, Prozess bleibt im Taskmanager erhalten? |
Von:
Thomas Grupp (
08.06.2005 11:08) |
Public Shared Sub XLSErstellenExcel(ByVal myTable As DataTable, ByVal Dateiname As String)
Dim xlApp As Excel.Application
Dim xlMappe As Excel.Workbook
Dim xlBlatt As Excel.Worksheet
Dim xlZelle As Excel.Range
Dim myRow As DataRow
Dim myColumn As DataColumn
Dim AnzColumns As Integer = myTable.Columns.Count
Dim I, H As Integer
xlApp = New Excel.Application
xlApp.Visible = False
xlMappe = xlApp.Workbooks.Add 'Add(ExcelVorlagen)
xlApp.DisplayAlerts = False
'
'Tabelle1
'
xlBlatt = xlMappe.Worksheets(1)
xlZelle = xlBlatt.Range("A1")
'Datensätze
Dim myDaten As String
H = 0
For Each myRow In myTable.Rows
H += 1
For I = 1 To AnzColumns
Dim Text As String
If IsDBNull(myRow.Item(I - 1)) Then
Text = ""
Else
Text = myRow.Item(I - 1)
End If
Dim Typ As String
Select Case myTable.Columns(I - 1).DataType.ToString
Case "System.Decimal"
Typ = "#.##0,00"
'Text = Text.Replace(",", ".")
Case Else
Typ = "@"
End Select
xlZelle.Offset(H - 1, I - 1).Value = Text
xlZelle.Offset(H - 1, I - 1).NumberFormat = typ
'myDaten &= Text '& vbTab
Next
'myDaten &= vbCr
Next
xlMappe.SaveAs(Dateiname)
'xlMappe.Close()
'xlApp.Quit()
'xlZelle = Nothing
'xlBlatt = Nothing
'xlMappe = Nothing
'xlApp = Nothing
'xlApp.WorkbookBeforeSave -= EventDel_BeforeBookSave
'xlApp.WorkbookDeactivate -= EventDel_Deactivate
xlMappe.Close(False)
Call NAR(xlZelle)
Call NAR(xlBlatt)
Call NAR(xlMappe)
xlApp.Quit()
Call NAR(xlApp)
'' RCW disposen
GC.Collect()
GC.WaitForPendingFinalizers()
End Sub
Betreff |
Von |
Datum |
|
|
Guido
Nachtigall
|
08.06.2005 11:15 |
|
|
Re: Excel-File erstellt, Prozess bleibt im...
Wenn nicht shared, was dann - ich muss ja von außerhalb drauf zugreifen können?<br><br>Und wie kenne ich den aktuellen Prozess - es können ja mehrere Excel-Dateien parallel erzeugt werden - ich darf ja... |
|
|
|
|
|
Thomas
Grupp
|
08.06.2005 11:34 |
|
|
Re: Excel-File erstellt, Prozess bleibt im...
Man kann auch jedes mal eine Instanz dieses Klasse bilden - wenn nicht<br>shared. Es könnte sein, daß der gemeinsame Zugriff das Killen des Prozesses<br>unterbindet. Kannst du mal probieren, ob es nicht... |
|
|
|
|
|
Guido
Nachtigall
|
08.06.2005 11:43 |
|
|
Thomas
Grupp
|
08.06.2005 11:52 |
|
|
Guido
Nachtigall
|
08.06.2005 11:56 |
|
|
Thomas
Grupp
|
08.06.2005 12:01 |
|
|
Guido
Nachtigall
|
08.06.2005 12:00 |
|
|
Re: Excel-File erstellt, Prozess bleibt...
So weit bin ich nun, aber wie weise ich dem Objekt einen vorhanden Process zu - ich habe mich schon zutode gegoogelt....<br><br> Dim ProcVorhanden As Boolean = False<br> Dim PC As... |
|
|
|
|
|
Thomas
Grupp
|
08.06.2005 14:20 |
|
|
Guido
Nachtigall
|
08.06.2005 11:19 |
|
|
Guido
Nachtigall
|
08.06.2005 11:23 |
|
|
Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!