Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VBA - Wert in anderes Tabellenblatt speichern

VBA - Wert in anderes Tabellenblatt speichern
27.11.2014 11:14:19
Alexander
Hallo zusammen,
Ich erstelle gerade eine Eingabemaske.
Dabei soll beim Klick auf einen Button eine Datei erzeugt werden (VBA schon vorhanden).
Zusätzlich soll der Wert aus Zelle C45 in einem zweiten Tabellenblatt ( L2:L1048576 ) eingefügt werden, falls in L2:L1048576 der Wert nicht schon vorhanden ist. Ansonsten soll nichts geschehen.
Dieser Code zum Drucken ist vorhanden:
Sub RBKdrucken()
Open "\\MTGESRV3\rbk\TDruck.dat" For Output As #1
Print #1, Range("B52")
Close #1
End Sub
Danke für eure Hilfe!

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA - Wert in anderes Tabellenblatt speichern
01.12.2014 17:33:43
Frank
Hallo Alexander,
Wert=Sheets("DiesesBlatt").cells(45,3).value
Ziel=Sheets("AnderesBlatt").cells(DeineZeile,DeineSpalte).value
if not Ziel=Wert then
Sheets("AnderesBlatt").cells(DeineZeile,DeineSpalte).value=Wert
end if

Dabei musst Du für 'DiesesBlatt' und 'AnderesBlatt' die entsprechenden Blattnamen eintragen. Und statt 'DeineZeile,DeineSpalte' die Zeile und Spalte davon: in einem zweiten Tabellenblatt ( L2:L1048576 )
Grüsse,
Frank

Anzeige
AW: VBA - Wert in anderes Tabellenblatt speichern
03.12.2014 10:33:55
Alexander
Danke sehr!
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Werte mithilfe von VBA in ein anderes Tabellenblatt speichern


Schritt-für-Schritt-Anleitung

Um Werte mithilfe von Excel VBA in ein anderes Tabellenblatt zu speichern, befolge diese Schritte:

  1. Öffne die Excel-Datei, in der du die Eingabemaske erstellen möchtest.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Füge ein neues Modul hinzu: Rechtsklick auf „VBAProject (deineDatei)“ > „Einfügen“ > „Modul“.

  4. Kopiere den folgenden VBA-Code in das Modul:

    Sub SpeichernInAnderesBlatt()
       Dim Wert As Variant
       Dim Ziel As Variant
       Dim SheetName1 As String
       Dim SheetName2 As String
       Dim DeineZeile As Long
       Dim DeineSpalte As Long
    
       ' Setze die Namen der Blätter
       SheetName1 = "DiesesBlatt"
       SheetName2 = "AnderesBlatt"
       DeineZeile = 2 ' Ändere dies auf die gewünschte Zeile
       DeineSpalte = 12 ' Entsprechend Spalte L
    
       Wert = Sheets(SheetName1).Cells(45, 3).Value
       Ziel = Sheets(SheetName2).Cells(DeineZeile, DeineSpalte).Value
    
       If Not Ziel = Wert Then
           Sheets(SheetName2).Cells(DeineZeile, DeineSpalte).Value = Wert
       End If
    End Sub
  5. Passe SheetName1, SheetName2, DeineZeile und DeineSpalte nach Bedarf an.

  6. Schließe den VBA-Editor und kehre zu Excel zurück.

  7. Verknüpfe den Code mit einem Button oder führe ihn direkt aus, um die Werte zu speichern.


Häufige Fehler und Lösungen

  • Fehler: "Sub oder Funktion nicht definiert"
    Lösung: Überprüfe, ob der Namen des Sub korrekt geschrieben ist und dass du das richtige Modul verwendest.

  • Fehler: Der Wert wird nicht gespeichert
    Lösung: Stelle sicher, dass die Blattnamen korrekt sind und dass die Zielzelle in AnderesBlatt tatsächlich leer ist.


Alternative Methoden

Eine Alternative zum Speichern von Werten in ein anderes Tabellenblatt ist die Verwendung von Excel-Formeln. Du kannst die WENN-Formel nutzen, um Werte zu überprüfen und zu speichern. Beachte jedoch, dass dies nicht so flexibel ist wie VBA.


Praktische Beispiele

Angenommen, du möchtest den Wert aus Zelle C45 auf „Blatt1“ in die Zelle L2 auf „Blatt2“ speichern. Dein VBA-Code würde dann so aussehen:

Sub BeispielSpeichern()
    Dim Wert As Variant
    Wert = Sheets("Blatt1").Cells(45, 3).Value
    If Sheets("Blatt2").Cells(2, 12).Value <> Wert Then
        Sheets("Blatt2").Cells(2, 12).Value = Wert
    End If
End Sub

In diesem Beispiel wird der Wert nur eingefügt, wenn er nicht bereits in Zelle L2 vorhanden ist.


Tipps für Profis

  • Verwende Option Explicit am Anfang deines Moduls, um sicherzustellen, dass alle Variablen deklariert sind. Dies hilft, Fehler zu vermeiden.
  • Nutze Application.ScreenUpdating = False, um die Leistung zu verbessern, während der Code läuft.
  • Füge Fehlerbehandlungsroutinen hinzu, um das Programm robuster zu machen.

FAQ: Häufige Fragen

1. Wie kann ich den Code anpassen, um mehrere Zellen zu überprüfen?
Du kannst eine Schleife verwenden, um durch einen Bereich von Zellen zu iterieren und jeden Wert zu überprüfen.

2. Wo finde ich die VBA-Option in Excel?
Drücke ALT + F11, um den VBA-Editor zu öffnen. Dort kannst du Module erstellen und deine Skripte schreiben.

Durch das korrekte Speichern von Werten in ein anderes Tabellenblatt kannst du deine Daten effizient verwalten und analysieren, während du gleichzeitig sicherstellst, dass keine Duplikate entstehen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige