PDA

Vollständige Version anzeigen : Tabellenblatt nur mit einem Teil des Namen ansprechen?


bearni
07.07.2014, 06:39
Hallo ihr lieben!

Ich habe eine frage: wie kann man ein Sheet nur über einen teil des namen ansprechen??
also wenn ein sheet "Summary AB" heisst dass ich nur mit "AB" arbeite??
Erklärung:
es gibt ein sheet "Summary AB" welche verschiedene Dinge berechnen soll welche einen Bezug "AB". wenn das Sheet "Summary BC" heisst soll es die Daten von "BC" berechnen.
wenn ich die ganzen namen verwende kein Problem das bekomme ich hin, aber nun habe ich erfahren es soll so umgeschrieben werden dass es über die "Endungen" sucht damit es nicht nur spezielle für "AB" oder "BC" zu verwenden ist.....
so meine Frage: wie ?teile? ich den namen in eine rechte und linke hälfte ein oder wie soll ich das machen? und vorallem wie mache ich es dann mit den Formeln???:eek:

bitte um eure hilfe, lg bearni

chris-kaiser
07.07.2014, 07:43
Hi,

und vorallem wie mache ich es dann mit den Formeln???

Ein Tabellenblatt über einen Teil des Blattes anzusprechen ist über Formeln nicht möglich. Zumindest nicht direkt.

<P><blockquote><table border=3 cellpadding=1><tr><td>&nbsp;</td><td align=center bgcolor=#C0C0C0>C</td><td align=center bgcolor=#C0C0C0>D</td><td align=center bgcolor=#C0C0C0>E</td><td align=center bgcolor=#C0C0C0>F</td><td align=center bgcolor=#C0C0C0>G</td><td align=center bgcolor=#C0C0C0>H</td></tr><tr><td align=center bgcolor=#C0C0C0>1</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td align=center bgcolor=#C0C0C0>2</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>AB</td><td>fdsdfsdfsf&nbsp;AB</td><td>&nbsp;</td></tr><tr><td align=center bgcolor=#C0C0C0>3</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>AC</td><td>ggggg&nbsp;AC</td><td>&nbsp;</td></tr><tr><td align=center bgcolor=#C0C0C0>4</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td align=center bgcolor=#C0C0C0>5</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td align=center bgcolor=#C0C0C0>6</td><td>AB</td><td>efdsad</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td align=center bgcolor=#C0C0C0>7</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td align=center bgcolor=#C0C0C0>8</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td align=center bgcolor=#C0C0C0>9</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr></td></tr></table></blockquote></P><br><br>

Formel in D6
=INDIREKT("'"&SVERWEIS(C6;F2:G3;2;0)&"'!A1")

nur ob das sinnvoll ist.
Wie sehen deine Formeln aus?

bearni
07.07.2014, 08:02
Danke dir erstmal für die Antwort.

lg bearni

chris-kaiser
07.07.2014, 08:11
Hi,

ich verstehe nicht was du damit erreichen willst, aber hier mal welche Codeteile um die Blätter zu Finden die AA-1 enthalten.

Sub amEnde()
Dim sh As Worksheet
For Each sh In Worksheets
If Right(sh.Name, 4) = "AB-1" Then
'mach was...
StrTemp = StrTemp & sh.Name & Chr(10)
End If
Next
MsgBox StrTemp
End Sub

Sub mittendrinnen()
Dim sh As Worksheet
For Each sh In Worksheets
If sh.Name Like "*AB-1*" Then
'mach was...
StrTemp = StrTemp & sh.Name & Chr(10)
End If
Next
MsgBox StrTemp
End Sub

Sub am_Ende_mit_like()
Dim sh As Worksheet
For Each sh In Worksheets
If sh.Name Like "*AB-1" Then
'mach was...was auch immer du vor hast
StrTemp = StrTemp & sh.Name & Chr(10)
End If
Next
MsgBox StrTemp
End Sub

Superingo2
07.07.2014, 08:12
Hallo Bearni,

wenn ich Dich richtig verstanden habe, ist das kein Problem. Ich arbeite selber gerne so.
Mithilfe dieser Formel erhältst Du den rechten Teil (2-stellig) Deines jeweiligen Blattnamens:
=RECHTS(ZELLE("dateiname";A1);2)

Nun kannst Du mit mit dieser neuen Variabel beliebige Formeln basteln wie z.B.:
=SVERWEIS(RECHTS(ZELLE("dateiname";ZS);2);A:D;4;0)

LG Ingo

bearni
07.07.2014, 08:31
danke schön euch beiden. hat mir schon mal weiter geholfen. nur meine frage: kann ich das auch ohne = "AB-1" schreiben? nur auf irgendeine Übereinstimmung geprüft wird?
also z.b wenn left(ws.name,5) is right(ws.name,5)? das bekomm ich nicht hin...
lg bearni

chris-kaiser
07.07.2014, 08:36
Hi,

kann ich das auch ohne = "AB-1" schreiben? nur auf irgendeine Übereinstimmung geprüft wird?

? Irgendeine Übereinstimmung klingt gut, glaube mir mit irgendwas stimmt alles überein. :)

also z.b wenn left(ws.name,5) is right(ws.name,5)? das bekomm ich nicht hin...

if left(ws.name,5) = right(ws.name,5) then
'mach was
end if

Nur verstehe ich den Sinn davon nicht
hast Du Tabellenblätter die

12345xcyxdsdf12345 oder ABCDEsonstwasABCDE

heißen , was hat das mit AB, AC usw. zu schaffen?

bearni
07.07.2014, 08:49
danke für die Hilfe. den sinn kann ich dir leider auch nicht erklären...war eine Anweisung. :-) und das AB oder AC sind einfach nur irgendwelche Bezeichnungen gewesen. zwecks fragen/erklären hier im Forum.
aber dennoch danke für die hilfe.