online 1
gast (50)

/ Forum / Tabellenkalkulation

TabellenkalkulationTabellenkalkulation

Fragevon hpeter vom 30.01.2020, 15:54 Options

Makro ausführen auf 2. Tabellenblatt

Hallo, hier meine Anfrage:
Wie ist ein Makro aufzubauen, das vom aktuellen Tabbellenblatt auf einem ausgeblendetem Tabellenblatt eine Zielwertsuche durchführt, dessen Ergebnisse auf dem aktuellen Tabellenblatt gebraucht werden?
danke im Voraus


Antwort schreiben

Antwort 1 von Beverly vom 30.01.2020, 18:45 Options

Hi Peter,

sprich das ausgeblendete Tabellenblatt mit Namen an

Sub suchen()
    Dim raZelle As Range
    Set raZelle = Worksheets("Ausgeblendet").Columns("A").Find("Suchbegriff", lookat:=xlWhole)
    MsgBox raZelle.Address
End Sub


Bis später,
Karin

Antwort 2 von hpeter vom 31.01.2020, 10:01 Options

Ich danke Karin für die schnelle Antwort. Da ich Anfänger bin, habe ich mich nicht richtig ausgedrückt. Ich möchte vom Tabellenblatt "Eingaben" im Tabellenblatt "Hydr." die folgende Zielwertsuche durchführen, ohne daß ich auf das Tabellenblatt wechseln muß.
Mit dem Recorder habe ich es auch versucht, aber es funktioniert nicht. (Das Makro selbst ist aber OK)

Sheets("Hydr.").Select
Range("D25").Select
Range("D25").GoalSeek Goal:=0, ChangingCell:=Range("D26")
Range("D55").Select
Range("D55").GoalSeek Goal:=0, ChangingCell:=Range("D56")
Sheets("Eingaben").Select
Range("F53").Select

Antwort 3 von Beverly vom 31.01.2020, 17:11 Options

Hi Peter,

ich kann es leider nicht prüfen, da ich deinen Tabellenaufbau und deine Funktion nicht kenne, aber versuche es mal so

Worksheets("Hydr.").Range("D25").GoalSeek _
    Goal:=0, ChangingCell:=Worksheets("Hydr.").Range("D26")
Worksheets("Hydr.").Range("D55").GoalSeek _
    Goal:=0, ChangingCell:=Worksheets("Hydr.").Range("D56")


Bis später,
Karin

Antwort 4 von hpeter vom 06.02.2020, 17:13 Options

Hallo Karin,
leider habe ich immer noch kein Erfolg
Laufzeitfehler '9' / Index außerhalb d. gültigen Bereichs
Worksheets("Hydr.").Range("F24").GoalSeek _
Goal:=0, ChangingCell:=Worksheets("Hydr.").Range("F25")
bei Veränderung kam (Syntaxfehler)
Worksheets("Hydraulik").Range("H24").Select
Worksheets("Hydraulik").Range("H24").GoalSeek Goal:=0,
ChangingCell:=Worksheets("Hydraulik").Range("H25")
Wie kann ich eine automatischen Makrolauf erreichen, wenn der Wert einer Zelle 0,001 übersteigt?
Mein Versuch, aber auch fehlerhaft
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("D27") > 0.001 Then
Call ZW1
End If
End Sub
Sub ZW1()
Range("D24").Select
Range("D24").GoalSeek Goal:=0, ChangingCell:=Range("D25")
End Sub
Vielen Dank im Voraus

Antwort 5 von hpeter vom 06.02.2020, 17:52 Options

Worksheets("Hydraulik").Range("D24").GoalSeek _
Goal:=0, ChangingCell:=Worksheets("Hydraulik").Range("D25")
Hallo Karin, Dein Tipp war richtig, mein Fehler--ich hatte in den verschiedenen Varianten die Tabb-Blätter unterschiedlich benannt.
Evtl. hast Du noch den richtigen Tipp zum automatisieren.
Gruß
Hans-Peter

Antwort 6 von Beverly vom 06.02.2020, 18:35 Options

Hi Hans-Peter,

nur als Tipp: der "Laufzeitfehler '9' / Index außerhalb d. gültigen Bereichs" hat immer zur Ursache, dass ein angesprochenes Element nicht gefunden wird. In diesem Fall sollte man als erstes prüfen, ob die Objekte mit dem richtigen Namen angesprochen werden. Manchmal reicht schon ein Leerzeichen am Ende, welches man so beim Hinschauen nicht erkennt, und schon kann man sich "zu Tode" suchen, weil man nicht nachvollziehen kann, weshalb es nicht funktioniert.

Zur Automatisierung: ich nehme an, in D27 steht eine Formel? In diesem Fall kann man nicht das Worksheet_Change Ereignis für die Überwachung der Zelle mit der Formel verwenden, weil Change eine direkte Eingabe verlangt. Man hat dann aber zwei Möglichkeiten: entweder, man überwacht mit dem Worksheet_Change Ereignis diejenigen Zellen, die den Formelwert beeinflussen, oder man verwendet das Worksheet_Calculate Ereignis, weil ja im Falle einer Veränderung des Formelergebnisses eine Neuberechnung stattfindet.

Bis später,
Karin

Antwort 7 von hpeter vom 07.02.2020, 10:20 Options

Ich danke Dir, die Tipps waren richtig

Antwort 8 von H-Peter_T vom 11.02.2020, 14:01 Options

eine neue Anfrage: Werte in ein neues Blatt übertragen
Hallo Leute,
Ich möchte mit Eurer Hilfe erreichen, daß ein Tabellenblatt mit den Werten, Text (aus Wenn-Bedingung) und dem Blattformat in ein neues Tabellenblatt (in derselben Arbeitsmappe) gespeichert wird, wobei der Tabellenname aus einer Zelle (z.B. "E3") übernommen wird.
Da zur eigentlichen Berechnung ein Tabellenblatt sowie ein Datenblatt hinterlegt sind, darf keine Verknüpfung mehr vorhanden sein.

PS: Dank an Karin ( ich bin ein ganzes Stück weiter gekommen)

Antwort 9 von Beverly vom 11.02.2020, 17:39 Options

Hi Hans-Peter,

Sub kopieren()
    Dim strName As String
    strName = ActiveSheet.Range("E3")
    On Error Resume Next
    strName = Worksheets(strName).Name
    If Err > 0 Then
        ActiveSheet.Copy After:=Worksheets(Worksheets.Count)
        ActiveSheet.Name = Range("E3")
        ActiveSheet.UsedRange.Copy
        ActiveSheet.UsedRange.PasteSpecial Paste:=xlPasteValues
        Application.CutCopyMode = False
    Else
        MsgBox "Es gibt schon ein Tabellenblatt " & strName
    End If
    Err.Clear
    On Error GoTo 0
End Sub


Bis später,
Karin

Antwort 10 von h-petert vom 12.02.2020, 15:31 Options

Hallo Karin,
wieder etwas weiter. Das kopieren geht, jedoch unter dem selben Namen der Tabelle1 ("Eingabe"; "Eingabe(2)"; leider nimmt er das Makro (Kopieren) mit.
Auch wird das Makro zum löschen der alten Daten (wird beim Öffnen aktiviert) auf dem neuen Blatt aufgeführt, so das das Formblatt keine Daten mehr enthält.
Für weitere Hilfe dankbar
Hans-Peter

Ähnliche Themen

Sheet().Select-Problem im Makro
fubajunkie  08.01.2007 - 91 Hits - 1 Antwort

Makro über Makro einfügen
fubajunkie  04.03.2007 - 88 Hits - 2 Antworten

Makro soll beliebig viele Datensätze mit ausführen
Beatlefield  26.11.2007 - 100 Hits - 5 Antworten

zur Formel Anzahlleerezellen
fge56  28.12.2007 - 104 Hits - 1 Antwort

Brauche Tipps für einen individuellen VBA-Code
varginator  03.04.2008 - 118 Hits - 14 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026