Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
576to580
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
576to580
576to580
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

INHALTSVERZEICHNIS

INHALTSVERZEICHNIS
25.02.2005 10:29:02
bernd
hallo user!
ist es möglich, mit einer art inhaltsverzeichnis bei excel mit vba-code die seitenanzahl der items auszugeben?
danke euch allen
bernd

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
nähere erklärung
bernd
angenommen ich hab ne 3 blätter, 2 mit daten, und ein "inhaltsverzeichnis"...
kann ich mit vba herausfinden und in blatt 3 schreiben, auf welcher seite sich eintrag xy auf blatt 1 befindet?
danke für hilfe
bernd


AW: nähere erklärung
25.02.2005 11:12:16
Harald
Da bin ich wieder ;-))
Bin auf Herbers Excel-CD fündig geworden. Ist also nicht auf meinem Mist gewachsen (darum läuft er auch fehlerfrei)
Der Code kommt in dein Blattmodul und er durchsucht alle Blätter, die vor ! dem aktiven Blatt liegen. Seite zeigt er nicht an, dafür die Fundzelle.

Sub Suchen()
Dim rng As Range
Dim iCounter As Integer
Dim sSearch As String, sAddress As String, sFirst As String
Dim bln As Boolean
sSearch = InputBox("Bitte Suchbegriff eingeben:", , "Suche")
If sSearch = "" Then Exit Sub
For iCounter = ActiveSheet.Index - 1 To 1 Step -1
Set rng = Worksheets(iCounter).Columns("A").Find _
(sSearch, lookat:=xlPart, LookIn:=xlValues)
If Not rng Is Nothing Then
sFirst = rng.Address(False, False)
MsgBox Worksheets(iCounter).Name & "!" & sFirst
bln = True
Do Until sAddress = sFirst
Set rng = Worksheets(iCounter).Columns("A").FindNext(after:=rng)
sAddress = rng.Address(False, False)
If sFirst <> sAddress Then
MsgBox Worksheets(iCounter).Name & "!" & sAddress
End If
Loop
sAddress = ""
sFirst = ""
End If
Next iCounter
If bln = False Then
MsgBox "Der Suchbegriff wurde nicht gefunden!"
End If
End Sub

Gruß
Harald
Anzeige
prog
bernd
danke dir harald
werde gucken, ob ich damit was mahen kann!
danke
cya
bernd
Ansatz
Martin
Hallo Bernd,
ich bin nicht sicher, ob ich Dich richtig verstanden habe, aber mal als Ansatz:

Sub Zahl_der_aktuellen_Druckseite()
Application.ScreenUpdating = False
ActiveSheet.PageSetup.PrintArea = ""
y = 1: Z = 1: i = 1: j = 1
eSeite = False: aSeite = False
Do While aSeite = False
Call Aktuelle_Seite
Loop
End Sub



Sub Aktuelle_Seite()
Dim Blatt As Range
Dim Prüfen As Object
Do While eSeite = False
Call Seitenumbruch(i, j)
Set Blatt = Range(Cells(y, Z), Cells(ZB, SB))
Set Prüfen = Application.Intersect(Range(ActiveCell.Address), _
Range(Blatt.Address))
If Prüfen Is Nothing = False Then
ActiveCell = "Aktuelle Druckseiten-Nr. ist " & i
End
End If
y = ZB + 1
i = i + 1
Loop
j = j + 1
Z = SB + 1
i = 1: y = 1
eSeite = False
End Sub


Sub Seitenumbruch(nBlatt, oBlatt)
Dim varPB As Variant
Dim nSeite%
varPB = ExecuteExcel4Macro("INDEX(GET.DOCUMENT(64)," & nBlatt & ")")
If IsError(varPB) Then
ZB = Cells(Cells.Rows.Count, oBlatt).End(xlUp).Row
eSeite = True
Exit Sub
End If
ZB = varPB - 1
varPB = ExecuteExcel4Macro("INDEX(GET.DOCUMENT(65)," & oBlatt & ")")
If IsError(varPB) Then
aSeite = True
SB = Cells(nBlatt, 256).End(xlToLeft).Column
Exit Sub
End If
SB = varPB - 1
End Sub

Gruß
Martin Beck
Anzeige
AW: danke ....
bernd
danke martin, werds mir gleich mal anschaun... obs funkt
danke für die bemühungen!!
bernd
mhm..
bernd
hi martin
sieht garnicht so schlecht aus, ich glaube du hast mich richtig verstanden...problem ist nur, dass ich ne fehlermeldung bekomme : anwendung oder obhektdefinierter fehler.....
er makriert mir jedesmal folgende codezeile: ZB = Cells(Cells.Rows.Count, oBlatt).End(xlUp).Row
weiss nicht mehr weiter.... soll ich dir die file mal hochladen?
danke dir
bernd
Ja, lade die Datei mal hoch (oT)
Martin

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige