Access2Excel - Der Einfache Zugriff auf Excel-Dateien

    • Release
    • Closed Source

      Access2Excel - Der Einfache Zugriff auf Excel-Dateien

      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"

      VB.NET-Quellcode

      1. Namespace Connection
      2. Public Class Connection
      3. Implements IDisposable
      4. Private _excelVers As String
      5. Private _headeryn As String
      6. Private _pvd As String
      7. Private _dateiPfad As String
      8. Protected disposed As Boolean
      9. Sub New(Datei As String
      10. Sub New(Datei As String, Provider As String)
      11. Sub New(Datei As String, Provider As String, ExcelVersion As String)
      12. Sub New(Datei As String, Provider As String, ExcelVersion As String, HeaderYesNo As String)
      13. Public Structure XLSVersion
      14. Public Structure HDRYN
      15. Public Structure ConnectionProvider
      16. Public Property ExcelVerion As String
      17. Public Property HeaderYesNo As String
      18. Public Property Provider As String
      19. Public ReadOnly Property ConnectionString As String
      20. Public ReadOnly Property Connection As OleDbConnection
      21. Public ReadOnly Property DisposeState As Boolean
      22. Private Function buildConnectionString(Pfad As String)
      23. Public Sub Open()
      24. Public Sub Dispose() Implements System.IDisposable.Dispose
      25. Public Overrides Sub Finalize()
      26. End Class
      27. End Namespace
      28. Public Class Utils
      29. Public Structure FileDialogType
      30. Public Shared Function fileDialog(fileDialogType As String) As String
      31. End Module
      32. NameSpace Format
      33. Public Class Format
      34. Implements IDisposable
      35. Private _tabelle As String
      36. Private _pfad As String
      37. Private _cellRange As new List(Of String)
      38. Private _cellFormat As new List(Of String)
      39. Private _visible As Boolean
      40. Private _cell As String
      41. Private _value As String
      42. Private disposed As Boolean
      43. Public Event UnhandledException As UnhandledExceptionEventHandler
      44. Sub New(Pfad As String)
      45. Sub New(Pfad As String, Tabelle As String)
      46. Sub New(Pfad As String, Tabelle As String, Range() As String) 'Range hat das Format A1:A2!0
      47. Public Property Tabelle As String
      48. Public Property CellRange As List(Of String)
      49. Public Property RangeFormat As List(Of String)
      50. Public Property Visible As Boolean
      51. Public Property Pfad As String
      52. Public Property Cell As String
      53. Public Property Value As String
      54. Public Sub Format()
      55. Public Sub OnFail()
      56. Public Sub Insert()
      57. Public Sub Dispose() Implements System.IDisposable.Dispose
      58. Protected Sub Finalize()
      59. End Class
      60. End Namespace
      61. Public Class InvalidArgumentException
      62. Inherits ApplicationException
      63. Sub New()
      64. Sub New(message As String)
      65. 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 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
      Dateien
      • Acces2Excel.zip

        (12,75 kB, 142 mal heruntergeladen, zuletzt: )
      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“ ()