Name der Bibliothek:
Access2Excel
Beschreibung:
Mit dieser Libary hab Ihr eine einfache Möglichkeit auf Excel-Dateien zuzugreifen. Der Zugriff passiert wahlweise über den Microsoft.ACE.OLEDB.12.0 oder dem Microsoft.Jet.OLEDB.4.0 Treiber. Standartmäßig ist der ACE.OLEDB eingestellt, man kann ihn aber auch ändern. Außerdem bietet sie die Möglichkeit via der Excel Objekt Libary mittels OLE-Automation direkt auf die Excel-Zellen zuzugreifen, als hätte man das Workbook offen. Man kann das Numberformat bestimmen und Werte eintragen.
Entstehungsgeschichte
Der Grund warum ich diese Libary erstellt habe ist der, dass ich immer wieder mit Exceldateien arbeite und deswegen auch immer wieder mit dem Zugriff zu tun habe. Mir wurde es leid immer für jede Projekt mir zu überlegen, wie ich die Verbindung aubaue und was ich für Werte einsetzte(Provider, Excel-Version, Tabelle). Hiermit habe ich eine Bibliothek, die als Standart den am häufigsten verwendeten Treiber, den ACE.OLEDB implementiert. Natürlich kann man wie ihn wie gesagt auch ändern.
Klassendiagramm:
"Klassendiagramm"
Verwendete Programmiersprache:
Visual Basic.NET (IDE: Microsoft Visual Studio 2012 Express)
Systemanforderungen
.NET Framework 4.0
Excel Object Libary 15(d.h. Excel 2013)
(Auf Wunsch kann man den Code anfragen und dann die 2010/2007er Version verlinken)
Bekannte Bugs:
Wenn eine Exception fliegt, dann verbleibt ein Prozess "EXCEL.EXE", in der nächsten Version wird dieser Bug gefixt
Wenn man die Connection-Klasse instantiiert und den ConnectionString Connection abruft, gibt es einen Nullverweis, daher entweder Connection direkt verwenden oder die Property ConnectionString verwenden
ChangeLog:
ToDo
Verbleibender Excel-Prozess verhindern
Beispiele einfügen
ConnectionString von Connection Property abrufbar machen
Werte in Zellen einfügen können
Download:
Accss2Excel.zip
Code kann angefrag werden
Lizenz/Weitergabe
Freeware, ClosedSource; Dekompillieren und Einbinden ist erlaubt.
Nicht für kommerzielle Zwecke gedacht
Access2Excel
Beschreibung:
Mit dieser Libary hab Ihr eine einfache Möglichkeit auf Excel-Dateien zuzugreifen. Der Zugriff passiert wahlweise über den Microsoft.ACE.OLEDB.12.0 oder dem Microsoft.Jet.OLEDB.4.0 Treiber. Standartmäßig ist der ACE.OLEDB eingestellt, man kann ihn aber auch ändern. Außerdem bietet sie die Möglichkeit via der Excel Objekt Libary mittels OLE-Automation direkt auf die Excel-Zellen zuzugreifen, als hätte man das Workbook offen. Man kann das Numberformat bestimmen und Werte eintragen.
Entstehungsgeschichte
Der Grund warum ich diese Libary erstellt habe ist der, dass ich immer wieder mit Exceldateien arbeite und deswegen auch immer wieder mit dem Zugriff zu tun habe. Mir wurde es leid immer für jede Projekt mir zu überlegen, wie ich die Verbindung aubaue und was ich für Werte einsetzte(Provider, Excel-Version, Tabelle). Hiermit habe ich eine Bibliothek, die als Standart den am häufigsten verwendeten Treiber, den ACE.OLEDB implementiert. Natürlich kann man wie ihn wie gesagt auch ändern.
Klassendiagramm:
VB.NET-Quellcode
- Namespace Connection
- Public Class Connection
- Implements IDisposable
- Private _excelVers As String
- Private _headeryn As String
- Private _pvd As String
- Private _dateiPfad As String
- Protected disposed As Boolean
- Sub New(Datei As String
- Sub New(Datei As String, Provider As String)
- Sub New(Datei As String, Provider As String, ExcelVersion As String)
- Sub New(Datei As String, Provider As String, ExcelVersion As String, HeaderYesNo As String)
- Public Structure XLSVersion
- Public Structure HDRYN
- Public Structure ConnectionProvider
- Public Property ExcelVerion As String
- Public Property HeaderYesNo As String
- Public Property Provider As String
- Public ReadOnly Property ConnectionString As String
- Public ReadOnly Property Connection As OleDbConnection
- Public ReadOnly Property DisposeState As Boolean
- Private Function buildConnectionString(Pfad As String)
- Public Sub Open()
- Public Sub Dispose() Implements System.IDisposable.Dispose
- Public Overrides Sub Finalize()
- End Class
- End Namespace
- Public Class Utils
- Public Structure FileDialogType
- Public Shared Function fileDialog(fileDialogType As String) As String
- End Module
- NameSpace Format
- Public Class Format
- Implements IDisposable
- Private _tabelle As String
- Private _pfad As String
- Private _cellRange As new List(Of String)
- Private _cellFormat As new List(Of String)
- Private _visible As Boolean
- Private _cell As String
- Private _value As String
- Private disposed As Boolean
- Public Event UnhandledException As UnhandledExceptionEventHandler
- Sub New(Pfad As String)
- Sub New(Pfad As String, Tabelle As String)
- Sub New(Pfad As String, Tabelle As String, Range() As String) 'Range hat das Format A1:A2!0
- Public Property Tabelle As String
- Public Property CellRange As List(Of String)
- Public Property RangeFormat As List(Of String)
- Public Property Visible As Boolean
- Public Property Pfad As String
- Public Property Cell As String
- Public Property Value As String
- Public Sub Format()
- Public Sub OnFail()
- Public Sub Insert()
- Public Sub Dispose() Implements System.IDisposable.Dispose
- Protected Sub Finalize()
- End Class
- End Namespace
- Public Class InvalidArgumentException
- Inherits ApplicationException
- Sub New()
- Sub New(message As String)
- End Class
Verwendete Programmiersprache:
Visual Basic.NET (IDE: Microsoft Visual Studio 2012 Express)
Systemanforderungen
.NET Framework 4.0
Excel Object Libary 15(d.h. Excel 2013)
(Auf Wunsch kann man den Code anfragen und dann die 2010/2007er Version verlinken)
Bekannte Bugs:
Wenn man die Connection-Klasse instantiiert und den ConnectionString Connection abruft, gibt es einen Nullverweis, daher entweder Connection direkt verwenden oder die Property ConnectionString verwenden
ChangeLog:
ToDo
Beispiele einfügen
ConnectionString von Connection Property abrufbar machen
Werte in Zellen einfügen können
Download:
Accss2Excel.zip
Code kann angefrag werden
Lizenz/Weitergabe
Freeware, ClosedSource; Dekompillieren und Einbinden ist erlaubt.
Nicht für kommerzielle Zwecke gedacht
In general (across programming languages), a pointer is a number that represents a physical location in memory. A nullpointer is (almost always) one that points to 0, and is widely recognized as "not pointing to anything". Since systems have different amounts of supported memory, it doesn't always take the same number of bytes to hold that number, so we call a "native size integer" one that can hold a pointer on any particular system. - Sam Harwell
Dieser Beitrag wurde bereits 7 mal editiert, zuletzt von „Radinator“ ()