VBA Wenn Dann
#1
Hallo zusammen,

ich möchte mittels VBA folgendes versuchen:

Wenn in Spalte A zB eine 1 steht, sollen an dieser Stelle in Spalte B bestimmte Werte also zB. ein x stehen, wenn in Spalte A eine 2 steht, soll an dieser Stelle in Spalte B ein y stehen usw...

Habe es mit

If Range("A1").Value = "1" Then Range("B1").Value = "x"
End If
If Range("A1").Value = "2" Then Range("B1").Value = "y"
End If

versucht, allerdings kappt das immer nur mit einer Zeile. Ich würde gerne einen kompletten Bereich festlegen, also die ganze Spalte A:A und B:B, erhalte dann aber die Meldung "Typen unverträglich". Bin leider ein absoluter Anfänger und komme hier überhaupt nicht weiter.

EDIT:

Die Anweisung
If Range("A:A").Value = "2" Then Range("B:B").Value = "y"
spuckt den Fehler "Typen unverträglich" aus. Ändere ich den Bereich aber von A:A auf A1, und B:B auf B1, (wie oben beschrieben) funktioniert diese.
Als Anfänger wäre meine Vermutung, eine for-Schleife einzubauen? Bin mir aber nicht ganz sicher wie und ob das das Problem lösen wird.


Gruß,

Aidan
Top
#2
Hallo,

diese Formel: =WENN(A1=1;"x";"y") schreibst du in Zelle B1, dann machst du auf das Ausfüllkästchen unten rechts einen Doppelklick, damit füllt sich die Formel bis an das Ende der Liste aus.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Top
#3
Hallo,

ich würde das ganze gerne mit einem Makro umsetzen, mit der Wenn-Formel habe ich es hinbekommen

Gruß

Top
#4
Hallo,

so:

Code:
Public Sub bbb()
Dim i As Long

With Worksheets("Tabelle1")
   For i = 1 To .Cells(.Rows.Count, "A").End(xlUp).Row
       If .Cells(i, "A") = 1 Then
           .Cells(i, "B") = "X"
       ElseIf .Cells(i, "A") = 2 Then
           .Cells(i, "B") = "Y"
       End If
   Next i
End With
End Sub


Gruß Werner
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste