Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1052to1056
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

Blattname weiterverarbeiten

Blattname weiterverarbeiten
24.02.2009 13:56:35
Dirk
Hallo euch allen,
mit dem untenstehenden CommandButton(CB)-Code in meinem Blatt 'allg' springe ich auf das dadurch ermittelte Blatt.
Dies funzt auch super, aber nun bräuchte ich folgende Erweiterung:
1. Wie kann ich den Namen des ermittelten Blattnamens (also wohl von objSheet) in die ZELLE U5 des derzeit aktiven Blattes - also 'allg' - eintragen (nicht nur objSheet.SELECT) ?
2. Wie kann ich diesen somit ständig wechselnden Blattnamen aus der ZELLE U5 dann ggf. per Formel weiterhin verarbeiten ?

Private Sub CommandButton4_Click()
'von Nepumuk
Set Auswahl = Selection
Dim objSheet As Worksheet
If IsDate(Range("u6").Value) Then
For Each objSheet In ThisWorkbook.Worksheets
If Left$(objSheet.Name, 3) = Left$(MonthName(Month(Range("u6").Value)), 3) Then      _
objSheet.Select
Exit Sub
End If
Next
MsgBox "Tabelle nicht gefunden.", vbCritical, "Fehler"
Else
MsgBox "Kein gültiges Datum in Zelle U6.", vbCritical, "Fehler"
End If
End Sub


Ich hoffe, Ihr versteht mein Anliegen u. könnt mir helfen.
MfG Dirk

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Blattname weiterverarbeiten
24.02.2009 14:09:41
Daniel
Hi
erste Fragen:

If Left$(objSheet.Name, 3) = Left$(MonthName(Month(Range("u6").Value)), 3) Then      _
Range("U5").Value = objSheet.Name
objSheet.Select
Exit Sub
End If


zweite Frage
hierfür solltest du dir die INDIREKT-Funktion mal ansehen.
bspw um den Wert der Zelle A1 aus dem gewählten Tabellenblatt anzuzeigen:


=Indirekt("'"&U5&"'!A1", wahr)


Gruß, Daniel

AW: Blattname weiterverarbeiten
24.02.2009 14:28:18
Dirk
Hi Daniel,
dein 1.Tipp traf schonmal voll ins Schwarze - VIELEN DANK !
Zum 2. Tipp werde ich mich erst noch weiter belesen, aber danke dir trotzdem schonmal vorab.
Ich melde mich dann wieder, wenn ich nicht weiterkomme bzw. eine Lösung gefunden habe...
Dir noch einen schönen Tag u. tausend Dank !
MfG
Dirk
Anzeige
AW: Blattname weiterverarbeiten
24.02.2009 23:08:08
Stefan
vor objSheet.Select einfügen:
Sheets("allg").Range("U5") = objSheet.Name
Blattname steht dann in der Zelle, den kannst du weiterverarbeiten oder
Code-Zugriff auf Blattname über Zelle Sheets("allg").Range("U5")
AW: Blattname weiterverarbeiten
25.02.2009 09:55:03
Dirk
Hi Stefan,
auch deine Variante funktioniert.
Zwar habe ich schon Daniels Tipp umgesetzt, bedanke mich aber trotzdem bei dir.
"Offen" gelassen hatte ich den Thread lediglich wegen meiner 2. Frage und daran tüftle ich gerade weiter...
Dank eurer Hilfe habe ich nun im Blatt 'allg' in U5 schonmal den Namen des Blattes, aus dem ich Werte benötige.
In allg!W9 habe ich einen Text. Dieser soll nun in dem ermittelten Blatt in Spalte I gesucht werden - bei Übereinstimmung brauche ich die Zahl aus Spalte D (ich suche also eine geeignete Formel dazu für allg!Y9).
Vermutlich bringt mich INDIREKT zum Ziel - aber leider komme ich damit nicht so richtig klar.
Hat jemand von euch Spezialisten vllt. einen konkreten Vorschlag ?
MfG
Dirk
Anzeige
Index & Vergleich
25.02.2009 15:52:34
Dirk
Hallo nochmal,
zwar habe ich schon ausführlich im Archiv gestöbert, komme aber nicht weiter...
Der richtige Weg scheint wohl eine Kombination aus INDEX und VERGLEICH zu sein...
Um die Problematik besser zu veranschaulichen u. euch das Experimentieren zu erleichtern, habe ich mal eine Beispielmappe gebastelt:
https://www.herber.de/bbs/user/59769.xls
MfG
Dirk
INDIREKT ....
26.02.2009 09:58:34
Renee
Hi Dirk,
Die Formel (auf Blatt allg) könnte funktionieren:

=INDIREKT($U$5&"!D" & VERGLEICH($W$9;INDIREKT($U$5&"!I:I");0))


Einige Anmerkungen zu deinem Blatt/Level:
Anfänger legen Wert auf die Formatierung (Schöne Schriften, Farben, Steuerelemente, Bildchen) statt auf die Funktionen!

Form follows Function


Die Abkürzungen der Monate bzw. der Blätter entspricht keinem mir bekannten Standard! Das führt zu unnötigen Komplizierungen.
Anfänger wollen Code, bevor sie die grundsätzlichen Funktionen/Formeln von Excel kennen. Bei Beachtung dieser einfachen Grundsätze könnte dein ganzes Ding ohne eine Zeile Code geschrieben werden!
GreetZ Renée
Anzeige
AW: INDIREKT ....
26.02.2009 13:59:10
Dirk
Hallo Renée,
deine Formel funktioniert für allg!Y9 absolut perfekt - vielen Dank !
Für allg!Z9 mit einer winzigen Anpassung ( E anstatt D ) ebenfalls.
Allerdings habe ich für allg!X9 daraus folgende Formel gebastelt:
=WENN(INDIREKT($U$5&"!A" & VERGLEICH($W$9;INDIREKT($U$5&"!I:I");0))=0; INDIREKT($U$5&"!B" & VERGLEICH($W$9;INDIREKT($U$5&"!I:I");0))*(-1); INDIREKT($U$5&"!A" & VERGLEICH($W$9;INDIREKT($U$5&"!I:I");0)))
Zwar liefert diese Formel die richtigen Werte, aber könnte man das auch kürzer gestalten ?
Zu deinen Anmerkungen:
Die Farben, Formatierungen etc. wählte ich nur zur Veranschaulichung u. evtl. besseren Darstellung der Zusammenhänge.
Das Original ist natürlich nicht derart überladen u. schlichter. Es wird von einem e.V. genutzt, wo ich gelegentlich einem Bekannten "aushelfe". Die Blattnamen waren vorgegeben u. werden auch bereits für anderen Projektcode u. Verknüpfungen genutzt.
Trotzdem aber auch hier vielen Dank für deine Anregungen. Dieser Tragweite war ich mir als EXCEL-Laie nicht bewusst u. werde sie gern weiterleiten !
MfG
Dirk
Anzeige
Verkürzt...
26.02.2009 14:18:28
Renee
Hi Dirk,
für allg!X9:

=INDIREKT($U$5&"!A" & VERGLEICH($W$9;INDIREKT($U$5&"!I:I");0))-INDIREKT($U$5&"!B" & VERGLEICH($W$9; INDIREKT($U$5&"!I:I");0)) 


GreetZ Renée

AW: Verkürzt...
26.02.2009 14:54:12
Dirk
Hi Renée,
besten Dank - grandios - funktioniert prima !!
Ich wünsche dir einen stressfreien Übergang in ein erholsames Wochenende.
MfG
Dirk

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige