Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1668to1672
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA-Verknüpfung Zeile und worksheet

VBA-Verknüpfung Zeile und worksheet
18.01.2019 15:06:42
Philip
Hallo liebe Leute,
ich bin VBA Anfänger. Ich habe mir ein Formular erstellt in welchem ich Namen eingeben kann. Diese werden automatisch in die nächste freie Zeile geschrieben.
Jetzt würde ich gerne das in einer seperaten Excel Datei eine erstellte Mustervorlage kopiert wird und dem Namen automatisch zugeordnet wird. Das heißt wenn ich später den Namen lösche soll Das Worksheet auch gelöscht werden.
Versteht ihr was ich meine und ist das möglich?

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA-Verknüpfung Zeile und worksheet
18.01.2019 16:16:03
UweD
Hallo
das Löschen innerhalb einer Zelle ist kein Event.
Deshalb ein Umweg über das change Event.
Wenn vorher was dort stand und nachher leer dann...
- Rechtsclick auf den Tabellenblattname
- Code anzeigen
- diesen Code dann einfügen
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Datei As String, Pfad As String, Ext As String, Z
    
    On Error GoTo Fehler
    
    If Not Intersect(Range("A:A"), Target) Is Nothing Then
        If Target.Count <> 1 Then
            MsgBox "Nur einzeln bearbeiten"
        End If
        
        Pfad = "x:\Temp\Test\" 'mit \am Ende 
        Ext = "*.xl*"
    
        With Application
            .EnableEvents = False
            .Undo 'Zeigt den Zellinhalt vor der Änderung 
            Datei = Target.Value 'Der ursprünglische Eintrag 
            .Undo 'Wieder zurück 
            .EnableEvents = True
            
        End With
        'Wenn jetzt leer und vorher ein Eintrag 
        If Target = "" And Datei <> "" Then
            
            'Prüfen ob es so eine Datei gibt 
            If Dir(Pfad & Datei & Ext) <> "" Then
                'Datei löschen 
                Kill Pfad & Dir(Pfad & Datei & Ext)
            Else
                MsgBox "Keine Datei gefunden: " & Datei & Ext
            End If
        End If
    End If
                

    '*** Fehlerbehandlung 
    Err.Clear
Fehler:
    Application.EnableEvents = True
    If Err.Number <> 0 Then MsgBox "Fehler: " & _
        Err.Number & vbLf & Err.Description: Err.Clear

End Sub
Momentan wird die Spalte A überwacht
LG UweD
Anzeige
AW: VBA-Verknüpfung Zeile und worksheet
18.01.2019 19:05:17
Philip
Ersteinmal vielen lieben Dank für deine Antwort.
Weil ich relativ frisch bin habe ich aber noch eine Frage, an welcher Stelle bzw wo steht die zuordnung zu der bestimmten Zelle?
Ich habe das so vor das auf einer Hauptseite Namen eingepflegt werden sollen. Auf dieser Seite Ist ein Makro welches ein Formular zur Eingabe von Namen etc. ist. Wenn man jetzt bestätigt wird dieser in die nächste freie Zeile geschrieben und er kopiert ein (von mir erstelltes Musterblatt, was vorbereitet aber noch nicht ausgefüllt ist, jedoch zu dem Namen gehört und sich dann auch so nennt)
für jeden eingepflegten Namen erstellt er quasi eines der vorgefertigten Musterblätter.
Das habe ich soweit auch hinbekommen.
Mir fehlt jetzt aber das der eingepflegte Name zu dem Tabellenblatt gehört, welches es erstellt hat.
Und somit auch das Tabellenblatt gelöscht wird wenn ich den Namen bzw die Zeile wo er drin steht lösche.
Ich danke dir schonmal für deine Mühe
Anzeige
Dann bitte mal eine Musterdatei
18.01.2019 20:23:18
UweD
AW: VBA-Verknüpfung Zeile und worksheet
21.01.2019 19:22:24
Philip
Ich weiß der Code ist nicht ganz professionell aber ich versuche mir mit vba eine vernünftige Übersicht zu schaffen.
Es wäre übrigens auch cool wenn ich die erstellte Tabelle gleich mit einem Hyperlink verbinden könnte(erreichbar über den erstellten Namen)
Ich habe das übrigens doch in einer Datei gemacht weil der Pfad sich immer mal ändern kann.
Ich bin für jede Hilfe dankbar
AW: VBA-Verknüpfung Zeile und worksheet
21.01.2019 07:17:39
Philip
Private Sub Button_Eingabe_Click()
If Bedienfeld.TextBox_Nachname.Value = "" Then
MsgBox ("Bitte Nachnamen eingeben")
Else
If Bedienfeld.TextBox_Vorname.Value = "" Then
MsgBox ("Bitte Vornamen eingeben")
Else
If Bedienfeld.TextBox_Personalnummer.Value = "" Then
MsgBox ("Bitte Personalnummer eingeben")
Else
Dim letzteZeile As Long
letzteZeile = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
Rows(letzteZeile + 1).Insert  'Zeile einfügen
Rows(letzteZeile).Copy Cells(letzteZeile + 1, 1)  'Zeile kopieren
'Inhalte der Monate Spalte k-ZZ löschen und Namen eintragen
Range(Cells(letzteZeile + 1, "K"), Cells(letzteZeile + 1, "ZZ")).ClearContents
Range(Cells(letzteZeile + 1, "B"), Cells(letzteZeile + 1, "D")).ClearContents
'Daten aus dem Textfeld schreiben
ActiveSheet.Cells(letzteZeile + 1, "B").Value = Bedienfeld.TextBox_Nachname.Value
ActiveSheet.Cells(letzteZeile + 1, "C").Value = Bedienfeld.TextBox_Vorname.Value
ActiveSheet.Cells(letzteZeile + 1, "D").Value = Bedienfeld.TextBox_Personalnummer.Value
Workbooks("Unterweisung.xlsm").Worksheets("MusterMechatronik").Copy After:=Workbooks(" _
Unterweisung.xlsm").Sheets(Sheets.Count)
ActiveSheet.Name = Bedienfeld.TextBox_Nachname
End If
End If
End If
End Sub

Private Sub Button_Zurück_Click()
'Eingabefenster schließen
Unload Bedienfeld
End Sub

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige