Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
604to608
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
604to608
604to608
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Name aus Ausdruck "herauspicken"
26.04.2005 17:41:05
harry
Hallo again,
habe folgenden ausdruck:
FPivotVerlinken.ListBox1.AddItem _
("[" & WrkBook & "]" & TblName & "!" & PivotName) ' ListBox1 wird befüllt
Nun möchte ich daraus aber den TblName herauspicken.
Wie schreibe ich das am besten?
P.S.: Kann mir dann auch jemand die Syntax von left und len erklären :)

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Name aus Ausdruck "herauspicken"
26.04.2005 17:55:48
Ramses
Hallo
Bist du dir mit deinem Level da wirklich sicher ?
TblName ist eine Variable, steht dir also hier direkt zur Verfügung und du musst nichts mehr "herauspicken"
Left und Len sind in der VBA-Online-Hilfe sehr gut erklärt
Gruss Rainer
AW: Name aus Ausdruck "herauspicken"
26.04.2005 18:04:00
harry
Hi Rainer,
nun ich weiß das dies eine Variable ist, aber diese ist nicht in dieser Routine!
"Left und Len sind in der VBA-Online-Hilfe sehr gut erklärt"
Danke für das Statement !
Weißt du, ich habe da nicht hinein geschaut ....
Hier mal mein code :
-------------------------------------------------------------------------
Option Explicit
Sub PT_Init()
Dim Tabelle As Worksheet
Dim pt As PivotTable
Dim PivotName As String
Dim WrkBook As String
On Error GoTo ErrorMessage
Application.DisplayAlerts = False
Application.EnableEvents = False
On Error Resume Next
WrkBook = ActiveWorkbook.Name
For Each Tabelle In ActiveWorkbook.Worksheets ' Befüllen der Boxen
Tabelle.Activate
Tabelle.Unprotect ("")
TblName = Tabelle.Name ' Speichere aktuellen TabellenNamen
Set pt = ActiveWorkbook.ActiveSheet.PivotTables()
For Each pt In ActiveSheet.PivotTables
PivotName = pt.Name ' und dessen Namen gespeichert
pt.AutoSort xlAscending, pt.SourceName
FPivotVerlinken.ListBox1.AddItem ("[" & WrkBook & "]" & TblName & "!" & PivotName) ' ListBox1 wird befüllt
FPivotVerlinken.ListBox2.AddItem ("[" & WrkBook & "]" & TblName & "!" & PivotName) ' ListBox2 wird befüllt
FPivotVerlinken.ComboBox1.AddItem ("[" & WrkBook & "]" & TblName & "!" & PivotName) ' ComboBox1 wird befüllt
Next pt
Next Tabelle
Application.DisplayAlerts = True
Application.EnableEvents = True
FPivotVerlinken.Show
GoTo Ende
ErrorMessage:
MsgBox ("Es ist ein Fehler aufgetreten!"), vbCritical + vbOKOnly
Ende:
End Sub
--------------------------------------------------------------------
Sub Verlinken()
Dim Tabelle As Worksheet
Dim pt As PivotTable
Dim PivotName As String
Dim i As Integer
Dim Counter As Integer
Dim Master As String
Dim d As String
On Error GoTo ErrorMessage
Application.DisplayAlerts = False
Application.EnableEvents = False
On Error Resume Next
Master = FPivotVerlinken.ComboBox1.Value ' Tabelle die als Master dient
With FPivotVerlinken.ListBox2
For i = 0 To .ListCount - 1 'Durchlaufe ListBox2 bis Ende
If .Selected(i) Then 'Wenn Selektiert
Counter = Counter + 1 'erhöhe Counter um 1
With pt 'gehe zum aktuell markierten PivotTabellenNamen
d = FPivotVerlinken.ListBox2.List(i) 'Name der PivotTabelle in der i-ten position der Liste
'Hier PROBLEM ---------------------------------
.AutoSort xlManual, .SourceName
ActiveSheet.PivotTableWizard SourceType:=xlPivotTable, SourceData:= _
(FPivotVerlinken.ComboBox1.Value)
ActiveSheet.PivotTables("PivotTable7").SmallGrid = False
ActiveSheet.PivotTables("PivotTable7").AddFields RowFields:="1", _
ColumnFields:="12"
Application.CommandBars("PivotTable").Visible = False
---------------------------------------------------
End With
End If
Next i
If (Counter = 0) Or (Master = "") Then
MsgBox "Sie haben entweder keine Tabelle selektiert oder keine Master Tabelle angegeben!", vbInformation + vbOKOnly ' Wenn nichts selektiert
Call PT_Init
End If
End With

Application.DisplayAlerts = True
Application.ScreenUpdating = True

GoTo Ende:
ErrorMessage: MsgBox " ", vbExclamation + vbOKOnly, "Fehler!"
Ende:
End Sub
------------------------------------------------------------------

Private Sub CommandButton1_Click() ' OK-Button
On Error GoTo Errorhandler
Me.Hide
Call Verlinken
Unload Me
Exit Sub
Errorhandler:
If Err.Number > 0 Then
MsgBox Err.Number & "-->" & Err.Description
Resume Next
End If
End Sub

-----------------------------------------------------

Private Sub CommandButton2_Click() ' Cancel-Button
Unload Me
FPivotVerlinken.Hide
End Sub

------------------------------------------------------
Anzeige
AW: Name aus Ausdruck "herauspicken"
26.04.2005 19:40:28
Luc:-?
Hallo Harry,
wie man aus deinen Prozeduren leicht ersehen kann, kommt TblName nur in einer, nämlich der Prozedur, in der sie auch belegt wird, vor. Damit liegt der Wert vor und muss wirklich nicht mehr aus dem Namen "herausgepickt" wdn. Wenn du den Wert aber noch in einer anderen, von dir nicht geposteten Prozedur benötigst, kannst du die hier lokale zu einer globalen Variablen machen, indem du sie nicht in einer Prozedur, sondern am Anfang des Moduls (nach Option Explicit) deklarierst. Sie steht dann unter diesem Namen allen anderen Prozeduren in diesem Modul zur Verfügung. Aber warum einfach, wenn's auch umständlich geht...!
Ansonsten sind wir hier nicht dazu da, Userbequemlichkeit zu unterstützen. Mitdenken und Eigenbemühungen sowie einigermaßen richtige Einschätzung des eigenen Kenntnisstandes - sprich Bescheidenheit - kommen hier sehr gut an...! Anderenfalls riskierst du bestenfalls ignoriert zu wdn.
Gruß Luc ;-?
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige