Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
388to392
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
388to392
388to392
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Makro ausführen wenn Werte in Zelle geschrieben

Makro ausführen wenn Werte in Zelle geschrieben
27.02.2004 08:59:05
Hansueli
Hallo VBA- Spezalisten
Ich habe nochmals ein Problem mit einem Makro ausführen wenn Zellen belegt ist.
Problem:
Wir haben ein Programm das auf Excel zugreift und in zugewiesen Felder Einträge macht. In einem Feld wird auch Null oder 1 eingetragen.
Wenn jetzt in diesem Feld 1 steht soll er ein Makro ausführen.
Wenn dort Null steht natürlich nicht.
Vorgang:
1. Man fühlt im externen Programm die diversen Abfragen aus.
2. Jetzt wird über einen Doppelklick Excel aufgerufen.
3. Im gleichen Zuge weden die Werte in die Tabelle der Arbeitsmappe übergeben.
4. Nun soll das Makro aufgerufen werden, wenn in dieser Zelle 1 steht.
(Das Makro stellt Sfr auf Euro um)
Für eure Hilfe bin ich sehr Dankbar
Hansueli

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro ausführen wenn Werte in Zelle geschrieben
27.02.2004 09:28:39
harry
hi Hansueli, etwas spärliche angaben. das makro, das die werte ins excel kopiert müsstest du erweitern, etwa so:
for each acell in range(weiss nicht, wo die daten stehen)
if acell.value = 1 then
call (das makro, dass sfr auf euro umstellt)
end if
next
genauer gehts mit deinen angaben leider nicht.
lebe grüße,
harry
AW: Makro ausführen wenn Werte in Zelle geschrieben
27.02.2004 09:43:37
Hansueli
Hallo harry
Dank mal für deine Antwort.
Es ist folgendermassen. Wir haben ein Programm für den ganzen Arbeitsprozess unserer Firma. Inbegriffen sind Angbote, Auftragsbestätigungen, Rechnungen usw.
Das Problem liegt da drin, dass wir in diesem Programm was in diesem Moment noch nichts mit Excel zu tun hat Eingabemasken generieren können.
Unteranderem auch Kontrollkästchen genau so wie bei Excel.
Der Wert der dort möglich ist (Wenn ja = 1, Wenn nein = 0).
Diese Werte werden in eine Blindzelle von Excel übergeben.
Nun soll ein Makro ausgeführt werden. Im Bezug auf diese Excel- Zelle.
Wenn z.b Zelle H1 = 1 ist setze mir in einigen Zellen die Währung auf Euro.
Wenn Zelle H1 = 0 ist setze mir in einigen Zelleb die Währung auf Schweizerfranken.
Zusammenfassend:
Die Miterbeiter können Eingaben in unserem Programm vornehmen (Consolidate).
Dann per Doppelcklick das Excelblatt (.xlt) öffnen.
Jetzt werden die Daten zum teil direkt in die Zellen geschrieben. Andere werden in Blindzellen geschrieben. Jetzt soll das Makro in Erscheinung tretten und je nach dem was in Zelle H1 steht umsetzten.
Ich hoffe das ist jetzt besser erklärt. Ist auch nicht so ganz einfach "Sorry"
Besten Dank für deine Hilfe
Grüsse vom Bodensee
Hansueli
Anzeige
AW: Makro ausführen wenn Werte in Zelle geschrieben
27.02.2004 09:30:58
AndreasS
Hi,

Sub test()
wert = Sheets(1).Range("a1").Value
If wert=1 Then
'DeinMakro
End If
End Sub

Gruß Andreas
AW: Makro ausführen wenn Werte in Zelle geschrieben
27.02.2004 10:00:51
Hansueli
Hallo Andi
Danke für deine Antwort.
Ich habe noch ein Problem. Die Daten werden ja zuerst eingelesen und dann soll das MAkro ausgeführt werden. Wie kann ich das automatisch erreichen?. Ohne Zusatzbutton.
Dank für deine Mithilfe
Grüsse vom Bodensee
Hansueil
AW: Makro ausführen wenn Werte in Zelle geschrieben
27.02.2004 10:07:50
AndreasS
Hi,
wie wärs denn mit auto_open oder worksheet_change, wenn die Excelmappe geöffnet wird?
Gruß Andreas
AW: Makro ausführen wenn Werte in Zelle geschrieben
27.02.2004 11:08:30
Hansueli
Hallo Andreas
Das Problem ist, dass zuerst die Werte eingetragen werden müssen in die Arbeitsmappe und erst dann, das Makro ausgeführt werden darf. Sonst sind die Bezugszellen noch leer.
Hast du mir da einen Vorschlag.
Gruss
Hansueli
Anzeige
AW: Makro ausführen wenn Werte in Zelle geschrieben
27.02.2004 11:18:36
AndreasS
Hi,
diesen Code auf das entsprechende Tabellenblatt:
Die Eingabezelle ist hier: A1. Nach Werteingabe von 1 wird dein Formatierungsmakro ausgeführt. Bei 0 das gleiche.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Address = "$A$1" And Target.Value = 1 Then
Call Währungsumwandler
End If
If Target.Address = "$A$1" And Target.Value = o Then
Call  Währungsumwandler2
End If
'usw.; ggf. mit Select Case arbeiten
End Sub

Gruß Andreas
AW: Makro ausführen wenn Werte in Zelle geschrieben
27.02.2004 12:44:11
Hansueli
Hallo Andreas
Besten Dank für deine grosse Hilfe. Ich werde das austesten.
Eine Frage habe ich noch zum Begriff Target. Wie ist der Zusammenhang im Excel im Bezug auf den Begriff. Kenn Ihn nur aus dem Wehrdienst bei meiner Waffeneinheit.
Was bewirkt er hier in Excel.
Nochmals besten Dank für deine Mithilfe. Das ist echt Klasse wenn solche Personen wie
du uns Anfänger zur Seite stehen
Gruss
Hansueli
Anzeige
AW: Makro ausführen wenn Werte in Zelle geschrieben
27.02.2004 13:14:47
Hansueli
Hallo Andreas
Ich schaffe es einfach nicht das es so läuft wie ich es will.
Bitte schaust du mir das mal an.
Ich habe die Mappe raufgeladen.
https://www.herber.de/bbs/user/3975.xlt
Ich danke die für dein Geduld ich bin halt Anfänger im VBA
Gruss
Hansueli
AW: Makro ausführen wenn Werte in Zelle geschrieben
27.02.2004 14:11:12
AndreasS
Hi,
bei mir läufts. Wenn in Angebot Range ("A1") eine 1 oder eine 0, dann kommen deine msgboxen. Was willst du machen?
Gruß Andreas
AW: Makro ausführen wenn Werte in Zelle geschrieben
27.02.2004 15:03:34
AndreasS
Hi, hier noch eine Beschreibung:
Change-Ereignis:

Tritt ein, wenn Zellen des Tabellenblattes durch den Benutzer oder durch eine externe Verknüpfung geändert werden.
Syntax
Private Sub Worksheet_Change(ByVal Target As Range)
Target: Der geänderte Bereich. Er kann mehr als eine Zelle umfassen.
Anmerkungen
Dieses Ereignis tritt nicht ein, wenn sich Zellen während einer Neuberechnung verändern. Verwenden Sie das Calculate-Ereignis, um eine Neuberechnung des Blattes aufzufangen.
Durch das Löschen von Zellen wird dieses Ereignis nicht ausgelöst.
Gruß Andreas
Anzeige
AW: Makro ausführen wenn Werte in Zelle geschrieben
27.02.2004 15:22:34
Hansueli
Hallo Andreas
Ich habe den Fehler gefunden. Ich habe das Makro im falschen Arbeitsblatt eingefügt
Au das tuttttt aber sehr wehhhh. Sorrry
Ich möchte mich für die gute und sehr lehrreiche Hilfe bedanken.
Ich würde mich freuen wieder mal ein Problem an Sie heran zu tragen.
Wie gesagt bin noch "anfänger". Möchte mich aber schon steigern.
Ein schönenes Wochenende
Viele Dankensgrüsse aus der Schweiz
Hansueli
AW: Makro ausführen wenn Werte in Zelle geschrieben
27.02.2004 15:55:10
Hansueli
Hallo ich bins nochmal
Das externe Programm hat die Daten noch gar nicht in die entsprechenden Zellen reingeschrieben. Deshalb funktioniert das Makro auch nicht. Nur wenn ich nachträglich
von Hand die Werte ändere dann klappst.
Das erwähte Calculate- Ereignis hilft mir da weiter ?
Wenn ja wie setzte ich das ein?
Danke für Ihre Mithilfe
Hansueli
Anzeige
AW: Makro ausführen wenn Werte in Zelle geschrieben
27.02.2004 15:14:54
Hansueli
Hallo Andreas
Danke für die Geduld
Aber ich verstehe die Welt nicht mehr. Ich kann eine 1 oder 0 eintragen soviel ich will
die Msgboxen kommen nicht automatisch auf den Bildschirm.
Wenn ich über den Pfeil die Makros auslöse kommen sie natürlich je nach Wert in Zelle A1
richtig. Aber das will ich ja nicht. Sie sollen ja automatisch kommen. Was kann das noch sein wo ich falsch mache.
Ich habe keine Ahnung.
Zu Übersicht habe ich die Msgboxen einfach eingefügt damit ich die Reaktion des Makros testen kann. Danach werde ich die Währungsumrechner einsetzen.
Hast du mir noch einen Typ. Wie gesagt Automatisch muss es gehen. Ich weiss das durch den Befehl Woorksheet change das erreicht werden kann. Aber es geht nicht.
Sorry wenn ich das nicht schaffe aber ich habs versucht
Gruss
Hansueli
Anzeige
AW: Makro ausführen wenn Werte in Zelle geschrieben
29.02.2004 12:11:34
AndreasS
Morgen,
auf welchem Blatt sollen denn die Eintragungen erfolgen?
Ich schaus mir dann nochmal an, dass alles läuft...
Gruß Andreas
AW: Makro ausführen wenn Werte in Zelle geschrieben
01.03.2004 07:42:54
hansueli
Guten Morgen Andreas
Ich habe es so geschafft das es in Excel funktioniert. Aber das Problem ist dass das externe Programm die Eintragungen noch nicht gemacht hat und das Makro schon abgelaufen ist. Kann ich das Makro zeitlich steueren ( ca. 5 Sekunden später oder so?).
Dann hätte ich die Gewissheit das es funktioniert. Oder gibt's noch andere Möglichkeiten.
Besten Dank für deine weitere Hilfe.
Noch eine Frage zu Calculate. Wie wird das angewendet?
Gruss
Hansueli
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige
Archiv - Verwandte Themen
Forumthread
Beiträge