Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Variable in variable Zelle schreiben

Variable in variable Zelle schreiben
02.09.2016 13:26:06
Dennis
Hallo,
ich habe folgendes Problem:
Ich habe in einem UserForm vier Werte eingetragen, diese sollen mittels commandbutton
entsprechend einer Artikelnummer die ebenfalls in der userform eingegeben wird, in eine Tabelle eingetragen werden.
Die Programmierung soll also in der Tabelle in der Spalte R den Eintrag =Arikelnummer suchen und dann in den 4 Zeilen dahinter die Werte aus der Userform. Leider klappt das mit meinem Code nicht und er fügt einfach nichts ein. Es gibt aber auch keine Fehlermeldung.
Hier der Code:
Private Sub CommandButton2_Click()
Dim find_artNr As String
Dim leerio As Long
Dim leernio As Long
Dim vollio As Long
Dim vollnio As Long
Dim i As Long
On Error Resume Next
find_artNr = Me.ListBox1.List(0)
leerio = Me.TextBox1.Value
leernio = Me.TextBox3.Value
vollio = Me.TextBox2.Value
vollnio = Me.TextBox4.Value
Columns("R:R").Select
For i = 1 To Cells(Rows.Count, 18).End(xlUp).Row
If Cells(i, 17) = find_artNr Then
Cells(i, 17).Select
If Err.Number = 91 Then MsgBox "Wert wurde nicht gefunden!"
ActiveCell.Offset(0, 10).Value = leerio
ActiveCell.Offset(0, 11).Value = leernio
ActiveCell.Offset(0, 12).Value = vollio
ActiveCell.Offset(0, 13).Value = vollnio
Range("AA2:AD160").Select
Selection.copy
Range("AA2:AD160").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=True, Transpose:=False
On Error GoTo 0
Exit Sub
Else: Cells(Cells(Rows.Count, 17).End(xlUp).Row + 1, 17).Select
End If
Next
End Sub
Ich hoffe ihr könnt mir dabei helfen.
Danke und Gruß
Dennis Schmitz
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Variable in variable Zelle schreiben
02.09.2016 13:33:23
Michael
Hi Dennis,
es kostet zu viel Zeit, userformen nachzubasteln, also wäre eine anonymisierte Beispieldatei hilfreich.
Ansonsten lies mal: https://www.herber.de/mailing/vb/html/xlmthfind.htm
Schöne Grüße,
Michael
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Variable in variable Zelle schreiben


Schritt-für-Schritt-Anleitung

Um mit VBA eine variable in eine Zelle zu schreiben, kannst du den folgenden Code verwenden. Dieser Code sucht nach einer Artikelnummer in der Spalte R und schreibt vier Werte aus einem UserForm in die entsprechenden Zellen der Tabelle.

  1. Öffne den VBA-Editor in Excel (Alt + F11).
  2. Füge ein UserForm hinzu und platziere TextBoxen für die Werte sowie eine ListBox für die Artikelnummer.
  3. Füge einen CommandButton hinzu und verwende den folgenden Code:
Private Sub CommandButton2_Click()
    Dim find_artNr As String
    Dim leerio As Long
    Dim leernio As Long
    Dim vollio As Long
    Dim vollnio As Long
    Dim i As Long

    On Error Resume Next
    find_artNr = Me.ListBox1.List(0)
    leerio = Me.TextBox1.Value
    leernio = Me.TextBox3.Value
    vollio = Me.TextBox2.Value
    vollnio = Me.TextBox4.Value

    ' Suche nach der Artikelnummer in Spalte R
    For i = 1 To Cells(Rows.Count, 18).End(xlUp).Row
        If Cells(i, 17) = find_artNr Then
            Cells(i, 17).Offset(0, 10).Value = leerio
            Cells(i, 17).Offset(0, 11).Value = leernio
            Cells(i, 17).Offset(0, 12).Value = vollio
            Cells(i, 17).Offset(0, 13).Value = vollnio
            Exit Sub
        End If
    Next i

    MsgBox "Wert wurde nicht gefunden!"
End Sub
  1. Schließe den VBA-Editor und teste dein UserForm.

Häufige Fehler und Lösungen

  • Fehler: "Wert wurde nicht gefunden!"

    • Stelle sicher, dass die Artikelnummer in der ListBox korrekt ausgewählt ist und in Spalte R vorhanden ist.
  • Fehler: Keine Werte werden eingetragen

    • Überprüfe, ob die TextBoxen tatsächlich Werte enthalten und dass du den richtigen Code ausführst.
  • Allgemeine Fehlermeldungen

    • Wenn du keine spezifische Fehlermeldung bekommst, kann es hilfreich sein, On Error Resume Next zu entfernen, um den Fehler besser zu identifizieren.

Alternative Methoden

Wenn du nicht mit UserForms arbeiten möchtest, kannst du auch direkt eine Zelle auslesen und deren Wert in eine andere Zelle schreiben. Hier ein einfaches Beispiel:

Sub BeispielZelle()
    Dim wert As Variant
    wert = Range("A1").Value ' Wert aus Zelle A1 auslesen
    Range("B1").Value = wert ' Wert in Zelle B1 schreiben
End Sub

Praktische Beispiele

Hier sind einige praktische Beispiele, wie du mit vba variable in zelle schreiben arbeiten kannst:

  1. Wert aus einer Zelle in eine Variable schreiben und dann in eine andere Zelle schreiben:
Sub BeispielWert()
    Dim wert As Variant
    wert = Range("A1").Value
    Range("C1").Value = wert
End Sub
  1. Mehrere Werte gleichzeitig in verschiedene Zellen schreiben:
Sub MehrereWerte()
    Dim wert1 As Variant, wert2 As Variant
    wert1 = Range("A1").Value
    wert2 = Range("B1").Value

    Range("D1").Value = wert1
    Range("E1").Value = wert2
End Sub

Tipps für Profis

  • Verwende Debug.Print im Code, um den Wert von Variablen während der Ausführung zu überprüfen.
  • Setze Option Explicit am Anfang deiner Module, um sicherzustellen, dass alle Variablen deklariert sind.
  • Nutze Schleifen und Bedingungen, um komplexere Datenstrukturen zu bearbeiten.

FAQ: Häufige Fragen

1. Wie kann ich eine Zelle auslesen und den Wert in einer Variable speichern? Um einen Wert aus einer Zelle in eine Variable zu speichern, kannst du den folgenden Code verwenden:

Dim meinWert As Variant
meinWert = Range("A1").Value

2. Wie kann ich eine Zelle mit einer Variablen beschreiben? Verwende den folgenden Code, um eine Zelle mit einer Variablen zu beschreiben:

Dim neuerWert As String
neuerWert = "Hallo Welt"
Range("B1").Value = neuerWert

3. Was mache ich, wenn mein Code nicht funktioniert? Überprüfe den Code auf Syntaxfehler und stelle sicher, dass alle benötigten Objekte und Werte korrekt definiert sind. Nutze Debugging-Tools im VBA-Editor, um den Fehler zu lokalisieren.

4. Kann ich auch mit mehreren Zellen gleichzeitig arbeiten? Ja, du kannst Schleifen verwenden, um mehrere Zellen zu bearbeiten, oder Arrays nutzen, um mehrere Werte gleichzeitig zu speichern.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige