Hallo,
das VBS von spector ermittelt die Gesamtblattanzahl pro Anlage und schreibt diese in einen Texttyp. Wenn ich die Frage von HansThomas richtig interpretiert habe passt folgendes VBS besser.
Gruß
Dominik
' CIM-BASE Gmbh Consulting und Engineering
' --------------------------------------------------------------------------------------
'
' BESCHREIBUNG
' Nummeriert die Blätter innerhalb von Anlagen.
'
'
' ÄNDERUNGSHOISTROY
' 2008-03-12 DR 01 Skript erstellt
' -EOH-
Option Explicit
Dim SCRIPT_NAME, SCRIPT_VERSION
SCRIPT_NAME = "SheetRenumber"
SCRIPT_VERSION = "01"
Dim E3, Prj, Dev, Con, Sht, Sym, Cor, Pin, Seg, Att, Txt, Fld
Dim ShtIds, sh
Dim ShtAssignment
Dim ShtNum
Dim Assignments, a
Dim ExistingAss
Dim NO_INCREMENT, NO_START
NO_INCREMENT = 1 'Schrittweite
NO_START = 1 'Erster Blattname
Set E3 = CreateObject("Ct.Application")
If E3 Is Nothing Then
MsgBox "E³.series konnte nicht gestarte werden", vbCritical, SCRIPT_NAME
WScript.Quit
Else
Set Prj = CreateObject("Ct.Job")
Set Sht = CreateObject("Ct.Sheet")
Set ExistingAss = CreateObject("Scripting.Dictionary")
E3.AvoidAutomaticClosing 1
End If
E3.Display
E3.ClearOutputWindow
E3.PutInfo 0, now & " Script '" & SCRIPT_NAME & "' Version " & SCRIPT_VERSION & " gestartet"
If Prj.GetId = 0 Then 'Kein Projekt geöffnet
E3.PutError 1, "Es ist kein Projekt geöffnet!"
Else 'Konvertieren
E3.PutMessage "Projekt: " & Prj.GetName
Prj.GetSheetIds ShtIds
For sh = 1 To UBound(ShtIds)
Sht.SetId ShtIds(sh)
ShtAssignment = Sht.GetAssignment
If ExistingAss.exists (ShtAssignment) Then
ShtNum = ExistingAss.item (ShtAssignment)
ShtNum = ShtNum + 1
Else
ShtNum = 1
End If
ExistingAss.item (ShtAssignment) = ShtNum
Next 'For sh = 1 To UBound(ShtIds)
Assignments = ExistingAss.Keys
For a = 0 To UBound(Assignments)
ShtNum = NO_START
For sh = 1 To UBound(ShtIds)
Sht.SetId ShtIds(sh)
If Sht.GetAssignment = Assignments(a) Then
Sht.SetName ShtNum
ShtNum = ShtNum + NO_INCREMENT
End If
Next 'For sh = 1 To UBound(ShtIds)
Next 'For a = 0 To UBound(Assignments)
End If 'If Prj.GetId = 0 Then
E3.PutInfo 1, now & " Script '" & SCRIPT_NAME & "' Version " & SCRIPT_VERSION & " beendet"
Set Prj = Nothing
Set E3 = Nothing
[Diese Nachricht wurde von Renz am 12. Mrz. 2008 editiert.]
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP