Hackerboard WikiHaboBlog

[HaBo]

 
Applikationen Probleme mit Anwendungsprogrammen aller Art gehören hier hin.

Excel - Mit wenn Formel Makro auslösen

Diskussion: Excel - Mit wenn Formel Makro auslösen im Forum Applikationen, in der Kategorie Software Home; Was mache ich falsch? Ich möchte je nachdem ob in D7 1, 2 oder 3 steht Makro "karriere", "mlt" oder ...

Antwort
Alt 31.07.09, 08:17   #1 (permalink)
 
Registriert seit: 07.05.05
nonpretium Leistung: Facit NTK
Likes: 0
Standard Excel - Mit wenn Formel Makro auslösen


Was mache ich falsch? Ich möchte je nachdem ob in D7 1, 2 oder 3 steht Makro "karriere", "mlt" oder "alle" starten.

Hier mal meine Wenn-Formel:
=WENN(D7=1;karriere();wenn(d7=2;mlt();alle()))


Und hier mein Modul mit drei Makros:

Modul1
Code:

Option Explicit

Sub karriere()
'
' karriere Makro
' Makro am 30.07.2009 von Freak aufgezeichnet
'
' Tastenkombination: Strg+k
'
Selection.AutoFilter Field:=1, Criteria1:="36"
End Sub
Sub milt()
'
' mlt Makro
' Makro am 30.07.2009 von Freak aufgezeichnet
'
' Tastenkombination: Strg+m
'
Selection.AutoFilter Field:=1, Criteria1:="35"
End Sub
Sub alle()
'
' alle Makro
' Makro am 30.07.2009 von Freak aufgezeichnet
'
' Tastenkombination: Strg+Umschalt+A
'
Selection.AutoFilter Field:=1
End Sub


Ich muss zugeben dass ich das noch nie gemacht habe, aber soweit ich mich belesen habe müsste es funzen. Beim Ergebnis der Wenn-Formel kommt aber immer Name nicht gefunden oder #Bezug! und anschließend gelang ich zurück in den Editor wo die Meldung kommt, fehler beim Kompilieren, außerhalb einer Prozedur ungültig. Hä? =(

nonpretium ist offline   Mit Zitat antworten
Alt 31.07.09, 12:00   #2 (permalink)
Senior Member
 
Registriert seit: 27.06.04
Cyberm@ster Leistung: Facit NTK
Likes: 0
Standard

Probiers mal hiermit, WENN() ist keine Excel Funktion.

Code:
=IF(D7=1;karriere();IF(d7=2;mlt();alle()))
Cyberm@ster ist offline   Mit Zitat antworten
   
HaBOT
 

Werbung ist gerade online    
Alt 31.07.09, 12:08   #3 (permalink)
 
Registriert seit: 07.01.07
CoRe0153 Leistung: Facit NTK
Likes: 0
Standard

Oder probiere es mal mit einer Funktion anstatt Sub. Also:

Code:
Function karriere()
'
' karriere Makro
' Makro am 30.07.2009 von Freak aufgezeichnet
'
' Tastenkombination: Strg+k
'
Selection.AutoFilter Field:=1, Criteria1:="36"
End Function
CoRe0153 ist offline   Mit Zitat antworten
Alt 03.08.09, 08:24   #4 (permalink)
Themenstarter
 
Registriert seit: 07.05.05
nonpretium Leistung: Facit NTK
Likes: 0
Standard

Danke für Eure Antworten.

Ich habe sub jeweils in function geändert, aber wenn ich die oben genannte Formel anwende (mit if) kommt

Name nicht gefunden. und er makiert mir das Wort "karriere" =(. hä?

Hab mal nen Screenshot von der ganzen Sache gemacht.
Angehängte Grafiken
Dateityp: jpg excel.jpg (82,5 KB, 115x aufgerufen)
nonpretium ist offline   Mit Zitat antworten
Alt 03.08.09, 19:10   #5 (permalink)
Senior Member
 
Registriert seit: 27.06.04
Cyberm@ster Leistung: Facit NTK
Likes: 0
Standard

Danke für die Screenshots aber die XLS-Datei wäre wesentlich hilfreicher.
Cyberm@ster ist offline   Mit Zitat antworten
Alt 03.08.09, 20:47   #6 (permalink)
Member of Honour
 
Registriert seit: 11.09.03
Watchme Leistung: Z3
Likes: 2
Standard

Zitat:
Probiers mal hiermit, WENN() ist keine Excel Funktion.
doch im deutschen Excel geht auch WENN() ..
Watchme ist offline   Mit Zitat antworten
Alt 04.08.09, 19:57   #7 (permalink)
Senior Member
 
Registriert seit: 27.06.04
Cyberm@ster Leistung: Facit NTK
Likes: 0
Standard

Zitat:
Original von Watchme
Zitat:
Probiers mal hiermit, WENN() ist keine Excel Funktion.
doch im deutschen Excel geht auch WENN() ..
Süß, werden neuerdings auch Scripting- und Programmiersprachen lokalisiert?!
Cyberm@ster ist offline   Mit Zitat antworten
Alt 04.08.09, 20:23   #8 (permalink)
Themenstarter
 
Registriert seit: 07.05.05
nonpretium Leistung: Facit NTK
Likes: 0
Standard

Tut mir leid, keine Chance. Sind Personaldaten.
nonpretium ist offline   Mit Zitat antworten
Alt 04.08.09, 21:51   #9 (permalink)
 
Registriert seit: 09.02.06
goflo Leistung: Facit NTK
Likes: 0
Standard

Zitat:
Süß, werden neuerdings auch Scripting- und Programmiersprachen lokalisiert?!
Das ist schon ziemlich lange so. Zumindest bei Excel.

@Topic:
Mit einer Funktion sollte das sehr wohl funktionieren. Dein Problem ist, dass die Funktion keine Rückgabe hat. So weis Excel nicht was es in die Zelle, in der die Wenn-Funktion steht schreiben soll. Falls der Rückgabewert unwichtig ist, kannst du zB einfach "" zurückgaben.

Code:
Function Funktion1()
    'tu was
    Funktion1 = "ergebnis"
End Function
goflo ist offline   Mit Zitat antworten
Alt 04.08.09, 23:26   #10 (permalink)
 
Registriert seit: 13.05.07
Enterprize1 Leistung: Facit NTK
Likes: 0
Standard

Zitat:
Original von goflo
Code:
Function Funktion1()
    'tu was
    Funktion1 = "ergebnis"
End Function
Das sollte glaub ich eher:
Code:
Function Funktion1()
    'tu was
    return "ergebnis"
End Function
sein. Bei dem Orginal wird einfach eine Variable auf einen Wert gesetzt.

Den obigen Text einfach überlesen
@nonpretium
Du könntest auch einfach die Tabelle mit ausgedachten Daten füllen und dann posten.
--
Enterprize1
Enterprize1 ist offline   Mit Zitat antworten
Alt 05.08.09, 10:43   #11 (permalink)
 
Registriert seit: 09.02.06
goflo Leistung: Facit NTK
Likes: 0
Standard

Zitat:
Das sollte glaub ich eher:

Code:
Function Funktion1()
    'tu was
    return "ergebnis"
End Function
sein. Bei dem Orginal wird einfach eine Variable auf einen Wert gesetzt.
Nein! Bei VBA gibt es kein Return!
goflo ist offline   Mit Zitat antworten
Alt 05.08.09, 12:52   #12 (permalink)
 
Registriert seit: 13.05.07
Enterprize1 Leistung: Facit NTK
Likes: 0
Standard

Oh ja stimmt, sorry. Hab das grade ausprobiert und hat nicht funktioniert. Ich sollte wohl nicht von einer Programmiersprache auf die andere schließen
--
Enterprize1
Enterprize1 ist offline   Mit Zitat antworten
Alt 05.08.09, 12:56   #13 (permalink)
 
Registriert seit: 09.02.06
goflo Leistung: Facit NTK
Likes: 0
Standard

Zitat:
Oh ja stimmt, sorry. Hab das grade ausprobiert und hat nicht funktioniert. Ich sollte wohl nicht von einer Programmiersprache auf die andere schließen großes Grinsen
Ja, ist wohl besser so! Vor allem nicht wenn die beiden Sprachen nicht einmal die selben Wurzeln haben.
goflo ist offline   Mit Zitat antworten
Alt 05.08.09, 16:27   #14 (permalink)
Senior Member
 
Registriert seit: 03.09.05
Lesco Leistung: Facit NTK
Likes: 0
Standard

Hast du die Sicherheitseinstellungen auch angepasst, sodass die Makros auch ausgeführt/geladen werden?
Lesco ist offline   Mit Zitat antworten
Antwort
   

Werbung ist gerade online    

[HaBo] » Software Home » Applikationen » Excel - Mit wenn Formel Makro auslösen
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Excel - Wenn Zelle farbig dann ... nonpretium Applikationen 2 28.07.09 17:37
PC kaputt - AN/AUS manuell auslösen odigo Die Problemzone 14 29.02.08 19:00
Array aus Excel-Makro in Visual Basic übernehmen? SPaRXLi Code Kitchen 5 23.11.07 13:06
Was ein Tippfehler auslösen kann Chatter Fun Section 10 22.09.05 19:09
MS Excel startet immer neu, wenn ich auf eine Datei im Explorer klicke Sabrina Applikationen 0 29.07.05 14:38


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61