Supportnet / Forum / Tabellenkalkulation
Wenn das, dann jenes Makro ...?
Frage
Ich brauche einen Lösungsansatz für das folgende Problem:
Wenn eine Zelle den Wert "A" annimmt, dann soll dieses Makro durchgeführt werden, und wenn die Zelle den Wert "B" annnimmt, dann soll ein anderes Makro durchgeführt werden.
Weiss jemand wie das funktionieren könnte. Wäre mir eine große Hilfe.
Antwort 1 von JoeKe
Antwort 2 von Saarbauer
Hallo,
da du keine Angaben zum Start des Makros machst und dies hier aus meiner Sicht zweitrangig ist, folgender Lösungsvorschlag:
Ein Makro mit einer "If"-Abfrage
If Zelle X =A Then
Ausführimg 1
Else
Ausführung oder weitere If-Abfrage
End
Gruß
Helmut
da du keine Angaben zum Start des Makros machst und dies hier aus meiner Sicht zweitrangig ist, folgender Lösungsvorschlag:
Ein Makro mit einer "If"-Abfrage
If Zelle X =A Then
Ausführimg 1
Else
Ausführung oder weitere If-Abfrage
End
Gruß
Helmut
Antwort 3 von Questionmark
Automatische Makro Ausführung!!!!
Wenn eine Zelle einen bestimmten Wert annimt, soll automatisch ein bestimmtes Makro aus geführt werden.
Konkret heisst das: Ich habe eine Zelle die entweder den Wert "D" oder den Wert "C" annimmt. Je nachdem welcher Wert vorliegt, soll eine andere Aktion ausgeführt werden:
Ich freue mich über Eure Hilfe!!!
Gruss aus D´dorf
Wenn eine Zelle einen bestimmten Wert annimt, soll automatisch ein bestimmtes Makro aus geführt werden.
Konkret heisst das: Ich habe eine Zelle die entweder den Wert "D" oder den Wert "C" annimmt. Je nachdem welcher Wert vorliegt, soll eine andere Aktion ausgeführt werden:
Ich freue mich über Eure Hilfe!!!
Gruss aus D´dorf
Antwort 4 von JoeKe
Hallo,
haben dir denn obenstehende Lösungsvorschläge nicht geholfen? Wenn nein weshalb nicht?
Gruß
haben dir denn obenstehende Lösungsvorschläge nicht geholfen? Wenn nein weshalb nicht?
Gruß
Antwort 5 von Questionmark
Doch, und danke bis hierhin.
Habe folgendes gemacht:
Sub Makro1()
If Range("M23") = "D" Then
Sheets("Drive type").Select
Range("A3:F63").Select
Selection.Copy
Sheets("VD4 Draw-out version").Select
Range("A27").Select
ActiveSheet.Paste
ElseIf Range("M23") = "C" Then
Sheets("Drive type").Select
Range("H3:O65").Select
Selection.Copy
Sheets("VD4 Draw-out version").Select
Range("A27").Select
ActiveSheet.Paste
End If
End Sub
Nun möchte ich aber, dass das Makro sich je nach Zellenwert automatisch aktiviert!
Könntest Du mir da helfen?
Habe folgendes gemacht:
Sub Makro1()
If Range("M23") = "D" Then
Sheets("Drive type").Select
Range("A3:F63").Select
Selection.Copy
Sheets("VD4 Draw-out version").Select
Range("A27").Select
ActiveSheet.Paste
ElseIf Range("M23") = "C" Then
Sheets("Drive type").Select
Range("H3:O65").Select
Selection.Copy
Sheets("VD4 Draw-out version").Select
Range("A27").Select
ActiveSheet.Paste
End If
End Sub
Nun möchte ich aber, dass das Makro sich je nach Zellenwert automatisch aktiviert!
Könntest Du mir da helfen?
Antwort 6 von Saarbauer
Hallo,
da die Fragestellung in AW 3 sich gegenüber der ursprünglichen Fragestellung nicht geändert hat, gibt es keine neuen Antworten
Aus meiner Sicht, ist die Frage von @ JöKe berechtigt.
Gruß
Helmut
da die Fragestellung in AW 3 sich gegenüber der ursprünglichen Fragestellung nicht geändert hat, gibt es keine neuen Antworten
Aus meiner Sicht, ist die Frage von @ JöKe berechtigt.
Gruß
Helmut
Antwort 7 von nighty
hi :)
so reicht auch :)
gruss nighty
Option Explicit
Sub Makro1()
If Range("M23") = "D" Then
Sheets("VD4 Draw-out version").Range("A27:F87") = Sheets("Drive type").Range("A3:F63").Value2
End If
If Range("M23") = "C" Then
Sheets("VD4 Draw-out version").Range("A27:F89") = Sheets("Drive type").Range("H3:O65").Value2
End If
End Sub
so reicht auch :)
gruss nighty
Option Explicit
Sub Makro1()
If Range("M23") = "D" Then
Sheets("VD4 Draw-out version").Range("A27:F87") = Sheets("Drive type").Range("A3:F63").Value2
End If
If Range("M23") = "C" Then
Sheets("VD4 Draw-out version").Range("A27:F89") = Sheets("Drive type").Range("H3:O65").Value2
End If
End Sub
Antwort 8 von nighty
hi all :)
oder so :)
gruss nighty
Option Explicit
Sub DeinMakro()
rem bei einem makroaufruf mit parameter call zu benutzen ist
If Range("M23") = "D" Then BuchStabeD
If Range("M23") = "C" Then BuchStabeC
End Sub
Sub BuchStabeD()
Sheets("VD4 Draw-out version").Range("A27:F87") = Sheets("Drive type").Range("A3:F63").Value2
End Sub
Sub BuchStabeC()
Sheets("VD4 Draw-out version").Range("A27:F89") = Sheets("Drive type").Range("H3:O65").Value2
End Sub
oder so :)
gruss nighty
Option Explicit
Sub DeinMakro()
rem bei einem makroaufruf mit parameter call zu benutzen ist
If Range("M23") = "D" Then BuchStabeD
If Range("M23") = "C" Then BuchStabeC
End Sub
Sub BuchStabeD()
Sheets("VD4 Draw-out version").Range("A27:F87") = Sheets("Drive type").Range("A3:F63").Value2
End Sub
Sub BuchStabeC()
Sheets("VD4 Draw-out version").Range("A27:F89") = Sheets("Drive type").Range("H3:O65").Value2
End Sub
Antwort 9 von JoeKe
Hallo Questionmark,
Ändere deinen Code so:
Option Explicit
Sub ist_D()
Sheets("Drive type").Range("A3:F63").Copy _
Destination:=Sheets("VD4 Draw-out version").Range("A27")
End Sub
Sub ist_C()
Sheets("Drive type").Range("H3:O65").Copy _
Destination:=Sheets("VD4 Draw-out version").Range("A27")
End Sub
In das VBA-Projekt des Tabellenblattes in dem deine Abfragezelle M23 steht, schreibst du folgenden Code:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("M23") = "D" Then
ist_D
ElseIf Range("M23") = "C" Then
ist_C
End If
End Sub
Gruß
Jöke
Ändere deinen Code so:
Option Explicit
Sub ist_D()
Sheets("Drive type").Range("A3:F63").Copy _
Destination:=Sheets("VD4 Draw-out version").Range("A27")
End Sub
Sub ist_C()
Sheets("Drive type").Range("H3:O65").Copy _
Destination:=Sheets("VD4 Draw-out version").Range("A27")
End Sub
In das VBA-Projekt des Tabellenblattes in dem deine Abfragezelle M23 steht, schreibst du folgenden Code:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("M23") = "D" Then
ist_D
ElseIf Range("M23") = "C" Then
ist_C
End If
End Sub
Gruß
Jöke
Antwort 10 von JoeKe
@nighty,
verblüffende Ähnlichkeit ;-))
verblüffende Ähnlichkeit ;-))
Antwort 11 von nighty
hi all :)
der code sollten ,in das tabellenereignis SelectionChange kopiert werden um einen automatismus auszuloesen
alt f11/projektexplorer/DeineTabelle
gruss nighty
p.s,
@Questionmark
gruss und anrede waeren auch nicht schlecht ,sonst kommst wohl net weit
der code sollten ,in das tabellenereignis SelectionChange kopiert werden um einen automatismus auszuloesen
alt f11/projektexplorer/DeineTabelle
gruss nighty
p.s,
@Questionmark
gruss und anrede waeren auch nicht schlecht ,sonst kommst wohl net weit
Antwort 12 von nighty
hi Jöke :)
jup :))
gruss nighty
jup :))
gruss nighty
Antwort 13 von JoeKe
Hi nighty,
SelectionChange halte ich für ungünstig! ;-)
Dann würde es bei jeder Änderung durchgeführt werden.
Bei Change, so wie es im Moment geschrieben ist, nur bei Änderungen in M23.
Gruß
JöKe
SelectionChange halte ich für ungünstig! ;-)
Dann würde es bei jeder Änderung durchgeführt werden.
Bei Change, so wie es im Moment geschrieben ist, nur bei Änderungen in M23.
Gruß
JöKe
Antwort 14 von nighty
hi jöke :)))
das zaehlt net meine brille ist abgenutzt grrr
gruss nighty
p.s.
macht spass der wettbewerb mit dir :))
das zaehlt net meine brille ist abgenutzt grrr
gruss nighty
p.s.
macht spass der wettbewerb mit dir :))
Antwort 15 von JoeKe
hi nighty,
wird mal zeit die brille zu erneuern. lol
Gruß JöKe
ps. dito
wird mal zeit die brille zu erneuern. lol
Gruß JöKe
ps. dito

