Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1368to1372
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
Inhaltsverzeichnis

Makro funktioniert nur im Editor

Makro funktioniert nur im Editor
01.07.2014 13:25:18
Andreas

Hallo liebes Excel Forum...
... Leider bin ich im VBA zu schwach um mein Problem selber zu lösen.
Ich schraube schon seit ca. 1 Woche an einem Makro herum, welches wenn ich es aus dem VBA _ Editor starte funktioniert. aber wenn ich es per:


If Range("I4").Value = "0" Then Call SAVE_R1

starte funktioniert es nicht.
Hier das Makro:

Sub SAVE_R1()
' SAVE_R1 Makro
Range("L5:M5").Select
Selection.Copy
Range("Q9").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("M3").Select
Selection.Copy
Range("P9").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Call FÜNFHUNDERTEINS_1_PLAYER1WIN
End Sub

und Hier das Makro im Makro:

Sub FÜNFHUNDERTEINS_1_PLAYER1WIN()
' FÜNFHUNDERTEINS_1_PLAYER1WIN Makro
Range("K7:K39,L7:L39").Select
Selection.ClearContents
Range("K5").Value = Range("K5").Value + 1 / 2
Range("K7").Select
End Sub

Also wenn ich es aus dem VBA Editor starte funktioniert es wie gewünscht.
Wenn ich es mit

If Range("I4").Value = "0" Then Call SAVE_R1

auslöse funktioniert es nicht und der Bereich

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

soll gedebuggt werden.
Ich habe keine Ahnung was ich tun soll.
Achso wenn ich das Makro mit einem Button Starte funktioniert es auch.
Ich hoffe mir kann jemand helfen.
Im vorraus vielen Dank fürs Interesse
Gruß
Andreas

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro funktioniert nur im Editor
01.07.2014 13:30:17
Hajo_Zi
Hallo Andreas,
Select, Activate usw. ist in VBA zu 99,9% nicht notwendig.
Der Cursor ist kein Hund der überall rumgeführt werden muss.
Hinweise zu select usw. Hajo-Excel.de
Hinweise zu select usw. Online-Excel.de
Option Explicit
Sub SAVE_R1()
' SAVE_R1 Makro
Range("L5:M5").Copy
Range("Q9").PasteSpecial Paste:=xlPasteValues
Range("M3").Copy
Range("P9").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
Call FÜNFHUNDERTEINS_1_PLAYER1WIN
End Sub
Sub FÜNFHUNDERTEINS_1_PLAYER1WIN()
' FÜNFHUNDERTEINS_1_PLAYER1WIN Makro
Range("K7:K39,L7:L39").ClearContents
Range("K5").Value = Range("K5").Value + 1 / 2
End Sub

Anzeige
AW: Makro funktioniert nur im Editor
01.07.2014 13:56:31
Andreas
Hallo Hajo...
...vielen dank für die schnelle Antwort
Das mit dem Cursor und dem Hund verstehe ich.
Ich werde mir die beiden Links auch noch zu gemüte führen.
Doch leider ist das Problem wie gehabt.
Makrostarts aus dem Editor und mit einem Button funktionieren.
aber mit

If Range("I4").Value = "0" Then Call SAVE_R1

funktioniert es immer noch nicht.
Der debugger springt zwar nicht an, aber die Zelle "K5" welche mit dem
Makro "FÜNFHUNDERTEINS_1_PLAYER1WIN" angesprochen wird zeigt mir den Wert 29 an.
Scheinbar wird eine 29fache Schleife gestartet.
Ich denke ich werde noch ein bischen VBA wissen nachholen müssen.
Vielen Dank jedenfalls nocheinmal
Grüße
Andreas

Anzeige
AW: Makro funktioniert nur im Editor
01.07.2014 14:00:20
Hajo_Zi
Hallo Andreas,
Ich baue keine Datei nach, die Zeit hat schon jemand investiert.
Ein Nachbau sieht bestimmt anders aus als das Original.
Ein Link zur Datei wäre nicht schlecht.
Von unsicheren Servern wie z.B. www.file-upload.net lade ich keine Datei runter. (lt. Einschätzung meines Virenprogramms)
Der Dateiname sollte was mit dem Problem zu tun haben.
Ich habe mir z.B. einen Ordner angelegt in dem ich alle Dateien aus dem Internet speichere. Bei Dateinamen wie Test..., Mappe…, Beispiel… wird eine vorhandene überschrieben.
Ein Bild in Excel geöffnet sieht anders aus als das Bild.
Gruß Hajo

Anzeige
AW: Makro funktioniert nur im Editor
01.07.2014 14:09:21
Andreas
Hallo Hajo...
...ich Lade mal die Datei auf den Server.
Vielen Dank das Du einmal einblick nehmen möchtest.
Hier der Link
https://www.herber.de/bbs/user/91354.xlsm
Es handelt sich Um Tabellenblatt 501 - 1
Die Maros befinden sich in Modul 1 und MAKRO_RESET
Aber wie ich in mein Profil geschrieben habe bin ich VBA absolute Beginner.
Ich denke es gibt viel für Dich zum Lachen.
:-)
Aber das riskiere Ich.

AW: Makro funktioniert nur im Editor
01.07.2014 14:47:22
Hajo_Zi
gut Du liest meine Beiträge also nicht und übernimmst auch nicht die Vorschläge, warum sollte ich da weitere Zeit investieren. Ich bin raus.

Anzeige
AW: Makro funktioniert nur im Editor
02.07.2014 10:20:51
Andreas
Hallo Hajo...
...warum ist Dein Fell denn so dünn.
Ich habe mit einer Sicherheitsdatei gearbeitet.
In dieser habe ich auch Deine Vorschläge umgesetzt.
Woher sonst sollte ich denn wohl wissen, das dieses nicht der Fehler war.
Leider habe ich Dir die Originaldatei gesendet.
Wieviel Sinn macht es eigentlich um Hilfe zu bitten und diese dann nicht anzunehmen.
Ich denke mal an meiner Datei kann man gut erkennen das ich in vielen Punkten auf Hilfe angewisen war,
und auch noch bin. Sonst wäre der Stil sicher etwas einheitlicher.
Trotzdem nochmals vielen Dank für den Versuch.
Einen kleinen Tip aber noch von mir.
Es ist nicht immer alles wie es scheint. :-))
Gruß
Andreas

Anzeige
AW: Makro funktioniert nur im Editor
01.07.2014 15:00:53
hary
Moin
Versuchs mal ohne Gaensepfoten. Deine Null ist Text.
If Range("I4").Value = 0
gruss hary

AW:Versuch das mal
01.07.2014 17:46:32
hary
Moin
Hab mal versucht den Code aufzuraeumen.Hoffe es richtig verstanden zu haben.
Schmeiss mal in einer Mappenkopie deinen Code raus und versuch's mal im Worksheet_Changeereigniss.
Code wird ausgefuehrt wenn in Range("K7:L39") in eine Zelle etwas eingetragen wird.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub 'Nur eine Zelle darf geaendert werden
If Not Intersect(Range("K7:L39"), Target) Is Nothing Then 'Wenn geaenderte Zelle im Bereich
Select Case Target.Column 'Fallauswahl Spaltennummer der geaenderten Zelle
Case 11 'Spalte K
If Target.Row < 39 Then 'wenn Zeilennummer < 39 dann
Cells(Target.Row, 11).Offset(2, 0).Select 'ausgehend von geaenderter Zelle 2 Zellen runter
Else 'sonst
Cells(7, 12).Select 'SpalteL Zeile7
End If
Case 12 'Spalte L
If Target.Row < 39 Then
Cells(Target.Row, 12).Offset(2, 0).Select 'ausgehend von geaenderter Zelle 2 Zellen  _
runter
Else
Cells(7, 11).select 'SpalteK Zeile7
End If
End Select
Select Case Target.Value 'Fallauswahl Zelleintrag
Case 999: FÜNFHUNDERTEINS_1_RESET 'wenn 999 dann Makro ausfuehren
Case 990: FHE4
Case 991: FHE3
Case 992: FHE2
Case 993: FHE1
Case 994: HI4
Case 995: HI3
Case 996: HI2
Case 997: HI1
Case 998: TRAINER
End Select
If Range("I4").Value = 0 Then SAVE_R1 'wenn I4 = Null dann Makro ausfuehren
End If
End Sub

Anzeige
AW:Save makro
02.07.2014 07:46:19
hary
Moin
Fuer SAVE_R1 sollte das reichen.
Sub SAVE_R1()
' SAVE_R1 Makro
Application.EnableEvents = False
Range("Q9").Value = Range("L5").Value
Range("P9").Value = Range("M3").Value
Application.EnableEvents = True
Call FÜNFHUNDERTEINS_1_PLAYER1WIN
End Sub

gruss hary

AW: AW:Save makro
02.07.2014 10:31:42
Andreas
Hallo Harry ich habe gerade Deine Vorschläge gelesen und bin jetzt schon begeistert wieviel Code ich Sparen kann.
Darüber habe ich mir schon seit einiger Zeit gedanken gemacht. Ich werde gleich mal mit einer Sicherungsdatei beginnen Deine Vorschläge umzusetzen.
Ich werde natürlich bericht erstatten :-)
Grüße
Andreas

Anzeige
AW: AW:Save makro
02.07.2014 10:42:28
Andreas
Hallo Harry...
...die Makro Modifikation für SAVE_R1
macht genau das was sie soll.
Ich habe das Makro ja mit dem Recorder aufgenommen und ging davon aus das dieses auch so in Ordnung ist.
Aber auf der Webseite von Hajo, konnte man schon lesen, daß das ein Irrglaube ist.
Nun probiere ich noch Deinen anderen Vorschlag und bin guter Dinge das es genau so gut klappt. :-)))
Ich erstatte dann Bericht.
Grüße
Andreas

AW: AW:Save makro
02.07.2014 20:49:58
Andreas
Hallo Hary...
...vielen Dank, die Aufräumaktion war ein voller Erfolg.
Ich bin begeistert wie gut Du Dich in meinem alten Kuddelmuddel
zurechtgefunden hast und direkt einen aufgräumten Code produziert hast.
Seit ich versuche meine Darttabellen zu bauen, bin ich ein richtiger Excelfan geworden.
Ich werde das was ich heute gelernt habe versuchen in meinen anderen Worksheets anzuwenden.
Nochmals vielen Dank dafür das Du meinen Blick in eine andere Richtung gelnekt hast.
Grüße
Andreas

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige