Microsoft Excel

Herbers Excel/VBA-Archiv

Makro für große Wenn-Dann Funktion

Betrifft: Makro für große Wenn-Dann Funktion von: Marcel
Geschrieben am: 07.09.2004 10:15:31

hallo zusammen,

ich habe mich gerade in excel an einer große wenn dann formel versucht. scheinbar sind aber wohl nur 6 bis 7 verschachtelungen erlaubt. ich brauche aber weit aus mehr.

hat jemand eine idee für ein makro, dass folgendes kann:

wenn a1 = a2 dann schreibe a3 in a4
wenn b1 = b2 dann schreibe b3 in a4
wenn c1 = b2 dann schreibe c3 in a4
usw....

danke schon mal :)

gruß´
marcel

  


Betrifft: Vergiss das Makro für große Wenn-Dann Funktion von: DieterB
Geschrieben am: 07.09.2004 11:02:18

Nimm doch Case Select.

Gruß

DieterB


  


Betrifft: AW: Makro für große Wenn-Dann Funktion von: Marcl
Geschrieben am: 07.09.2004 11:07:40

Hallo Marcel,

Sub kopieren()
Range("a1").Select
Do While ActiveCell<>""
ac1=ActiveCell
ActiveCell.Offset(1,0).Select
ac2=Activecell
If ac1 = ac2 then
ActiveCell.Offset(1,0).Select
Range("A4") = Activecell
Activecell.Offset(1,-3):Select
Loop
End Sub

Kopiert immer den Wert aus Zelle 3 der aktuellen Spalte in A4, wenn Zelle 1 und 2 identisch sind. Ist Zelle 1 in ASpalte leer, endet das Makro

Gruß
Marcl


  


Betrifft: AW: Makro für große Wenn-Dann Funktion von: Fehler im 1. Makro
Geschrieben am: 07.09.2004 11:23:04

Du drückst Alt und F8.
gebe einen Buchstaben ein und gehe auf erstellen
Jetzt können Sub und End Sub gelöscht werden.
Auf der linken Seite sollte VBA Projekt(...) stehen, wenn nicht Alt und R drücken.
Nun suchst Du da den Namen Deiner Tabelle, in der die Daten geändert werden und gibst da meinen Code ein.



Sorry, hab mich verschrieben,
hier das richtige:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row <> 1 And (Target.Column < 1 Or Target.Column > 300) Then Exit Sub
Range("a1").Select
'End If
' solange Zelle 1in Spalte nicht leer ist
Do While ActiveCell <> ""
ac1 = ActiveCell
ActiveCell.Offset(1, 0).Select
ac2 = ActiveCell
' wenn Zelle 1 gleich Zelle 2
If ac1 = ac2 Then
' kopiert Zelle 3in A4
ActiveCell.Offset(1, 0).Select
Range("A4") = ActiveCell
' nächste Spalte 1. Zelle auswählen
Else
ActiveCell.Offset(-2, 1).Select
End If
Loop
End Sub




Gruß
Marcl


  


Betrifft: AW: Makro für große Wenn-Dann Funktion von: Marcel
Geschrieben am: 07.09.2004 11:53:37

hallo marcl,

dankeschön! passt schon fast!
falls du zeit hast, geb mir mal deine e-mailadresse, dann würde ich dir mal was schicken...

hätte noch 1 - 2 fragen!

gruß
marcel


  


Betrifft: AW: Makro für große Wenn-Dann Funktion von: Marcl
Geschrieben am: 07.09.2004 12:12:16

jo das

hardmarcsebay@aol.com


Gruß
Marcl


 

Beiträge aus den Excel-Beispielen zum Thema "Makro für große Wenn-Dann Funktion"