vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Textbox-Daten per Button_Click in Excel letzte Zeile übergeben 
Autor: sterat
Datum: 14.01.13 23:21

Hallo zusammen,

obwohl ich mich nicht als fortgeschritten bezeichnen möchte/kann poste ich dennoch hier. Ich habe ein kleines Prog. geschrieben, dass Eingaben aus einer Textbox an einer vorhandenen Excel-Datei übergeben soll. Soweit klappt das auch. Nur leider schaffe ich es nicht, dass vor dem Eintrag erst einmal die erste freie Zeile gefunden wird. Also wird immer A1 überschrieben.

In VBA wird das einfach mit Code gelöst.
ErsteFreieZeile = Sheets(1).Range("A65536").End(xlUp).Offset(1, 0).Row
Das klappt aber leider nicht mit VB 2010.

Hier mal mein Quelltext - vielleicht hat ja jemand für mich eine Lösung. Das Problem fängt bei
'Letze Zeile finden - erster Lösungsansatz
an.


Imports Microsoft.Office.Interop
Imports Microsoft.Office.Interop.Excel
Imports Microsoft.Office.Core
 
 
Public Class Form1
 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button1.Click
 
        Dim ExcelDateiName As String = "C:\Klassifizierung.xlsx"
        Dim ExcelTabelleName As String = "List_Klass"
        Dim xls_Appl As Excel.Application
        Dim xls_Mappe As Excel.Workbook
        Dim xls_Blatt As Excel.Worksheet
        xls_Appl = New Excel.Application
        xls_Appl.Visible = True
        xls_Mappe = xls_Appl.Workbooks.Open(ExcelDateiName)
        xls_Blatt = xls_Mappe.Worksheets(ExcelTabelleName)
        xls_Blatt.Activate()
 
        'Letze Zeile finden - erster Lösungsansatz
 
        For zeile = 0 To 2000
            If xls_Mappe.Worksheets("List_Klass").Cells(zeile, -1).Value = "" _
              Then DasIstDieLeereZeile = zeile : Exit For
            '---> Ab If kommt folgende Fehlermeldung: COMException wurde 
            ' nicht behandelt - "Ausnahme von HRESULT: 0x800A03EC"
        Next zeile
 
        'Datenübertrag
        xls_Blatt.Range("A1").Value = TextBox1.Text 'So funktioniert es, leider 
        ' wird bei einem erneuten Eintrag immer wieder A1 überschrieben
 
        'Form leeren
        TextBox1.Text = ""
 
        'Speichern
        xls_Mappe.Save()
 
        'Schliessen
        xls_Appl.Quit()
 
    End Sub
 
 
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button2.Click
 
        If MsgBox("Programm wirklich beenden?", MsgBoxStyle.YesNo, Me.Text) = _
          MsgBoxResult.No Then
 
            Exit Sub
 
        End If
 
        Me.Close()
 
    End Sub
End Class
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Textbox-Daten per Button_Click in Excel letzte Zeile übergeb...1.874sterat14.01.13 23:21
Re: Textbox-Daten per Button_Click in Excel letzte Zeile übe...953effeff15.01.13 23:02
Re: Textbox-Daten per Button_Click in Excel letzte Zeile übe...876sterat16.01.13 08:49
Re: Textbox-Daten per Button_Click in Excel letzte Zeile übe...902ModeratorDaveS16.01.13 09:49
Re: Textbox-Daten per Button_Click in Excel letzte Zeile übe...878sterat16.01.13 22:50
Re: Textbox-Daten per Button_Click in Excel letzte Zeile übe...875ModeratorDaveS17.01.13 09:10

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel