Formel funktioniert nur wenn Datei ist .xlsm

Bild

Betrifft: Formel funktioniert nur wenn Datei ist .xlsm
von: Stefan
Geschrieben am: 18.11.2015 07:19:11

Guten Morgen Zusammen,
ich hänge an folgendem Problem:
Ich habe (vor etwas längerer Zeit) eine Excel-Datei erstellt, die in einer Art Übersichtblatt alle in der Mappe enthaltenen Tabellenblätter auflistet und einen Link generiert, der zu dem jeweiligen Tabellenblatt führt.
"Damals" hatte ich noch ein paar Makros enthalten, die im laufenden Betrieb zwar nicht genutzt wurden (weil die Datei für mehrere Benutzer freigegeben war) die ich dann aber nutzen konnte, wenn mal wieder etwas geändert werden musste.
Daher war die alte Datei als .xlsm gespeichert.
Jetzt will ich die Datei neu aufsetzen, ohne Makros, aber wenn ich diese jetzt als "normale" .xlsx speichere, funktioniert aus irgendeinem Grund die Formel nicht.
...und ich beim besten willen nicht, warum...
Das hier wäre die Formel:

=WENN(ZEILEN($5:6)>ANZAHL2(Tabellenblätter);"";HYPERLINK("#'"&INDEX(Tabellenblätter;ZEILEN($5:6))   &"'!A7";TEIL(INDEX(Tabellenblätter;ZEILEN($5:6));FINDEN("]";INDEX(Tabellenblätter;ZEILEN($5:6)))+1;   31)))   
Irgendjemand eine Idee???
Danke und Gruß
Stefan

Bild

Betrifft: AW: Formel funktioniert nur wenn Datei ist .xlsm
von: Bernd
Geschrieben am: 18.11.2015 07:48:06
Hi,
ich selbst habe diesen Code mal gebraucht der selbiges macht:
Option Explicit ' IMMER zu empfehlen

Sub sbName()
   Dim strN As String, X As Long, Y As Long, i As Long
'  Application.ScreenUpdating = False     ' evtl. NACH dem Test aktivieren
   With Sheets("Tabelle1")      ' Anpassen
      .Unprotect
      For X = 1 To Worksheets.Count - 1
         For Y = X + 1 To Worksheets.Count
            If Worksheets(Y).Name < Worksheets(X).Name Then
               Worksheets(Y).Move Before:=Worksheets(X)
            End If
         Next Y
      Next X
      .Activate
   
      Range("A:B").ClearContents
      Application.PrintCommunication = False
      For i = 1 To Worksheets.Count
         strN = Worksheets(i).Name
         .Cells(i + 2, 2) = strN
         .Hyperlinks.Add Anchor:=Cells(i + 2, 2), Address:="", _
            SubAddress:="'" & strN & "'!A1", TextToDisplay:=strN
         If .Name <> strN Then
            .Cells(i + 2, 1) = i - 1
            Worksheets(i).Cells(2, 2).Value = i - 1
            Worksheets(i).PageSetup.RightFooter = CStr(i - 1)
         End If
      Next i
      .Columns("A:A").EntireColumn.AutoFit
      Application.PrintCommunication = True
      Application.GoTo Reference:="R3C1"
      .Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
   End With
   Application.ScreenUpdating = True
End Sub
Einfach in ein Modul kopieren und eventuell auf den Namen Deines Tabellenblatts, wo die Übersicht ist, ändern.
Hilfts?
mfg Bernd

Bild

Betrifft: AW: Formel funktioniert nur wenn Datei ist .xlsm
von: Bernd
Geschrieben am: 18.11.2015 08:03:45
Hi,
sorry, geht ja so nicht, brauchst ja ohne Makro.
mfg Bernd

Bild

Betrifft: AW: Formel funktioniert nur wenn Datei ist .xlsm
von: Bernd
Geschrieben am: 18.11.2015 08:22:01
Hi nochmals,
hier ein Beitrag welcher bei mir funktioniert:
http://www.office-loesung.de/ftopic102738_0_0_asc.php
mfg Bernd

Bild

Betrifft: AW: Formel funktioniert nur wenn Datei ist .xlsm
von: Stefan
Geschrieben am: 18.11.2015 14:08:43
Hallo Bernd,
die Formel funktioniert. Danke
...auch wenn ich immer noch nicht verstehe, warum meine Formel nicht funktioniert ;)
Gruß
Stefan

Bild

Betrifft: AW: Formel funktioniert nur wenn Datei ist .xlsm
von: Sepp
Geschrieben am: 18.11.2015 07:49:49
Hallo Stefan,
du verwendest wahrscheinlich eine definierten Namen der Makcro4-Funktionen enrhält und die laufen nur, wenn VBA aktiviert ist.

Gruß Sepp


Bild

Betrifft: ...d.h., die alten Standard-Makroblätter wdn ...
von: Luc:-?
Geschrieben am: 18.11.2015 08:34:03
…nur einbezogen, wenn als .xlsm/b gespeichert wird. Mit VBA hat das eigentlich nichts zu tun, es sei denn, MS hat die inzwischen auf VBA umgeschrieben, Sepp… ;-)
Gruß, Luc :-?

Besser informiert mit …

Bild

Betrifft: so weit ich weiß, ja!
von: Sepp
Geschrieben am: 18.11.2015 08:51:50
Hallo Luc,
die Funktionen sind nicht in VBA geschrieben, aber man muss die Datei mit Makros speichern, um sie verwenden zu können.

Gruß Sepp


Bild

Betrifft: Das war klar, aber wg dieser Blätter! ;-) owT
von: Luc:-?
Geschrieben am: 18.11.2015 14:28:04
:-?

Bild

Betrifft: AW: aber auch nur dann ...
von: ... neopa C
Geschrieben am: 18.11.2015 08:50:47
Hallo Stefan,
... wenn Du Deine als "Tabellenblätter"benannte Formel in einer älteren XLSm-Datei noch hast und diese wieder unter dem gleichen Bereichsnamen abspeicherst. Ansonsten siehe z.B. den Link den Dir Bernd geschickt hat oder irgendwo in excelformeln.de.
Gruß Werner
.. , - ...

Bild

Betrifft: AW: aber auch nur dann ...
von: Stefan
Geschrieben am: 19.11.2015 07:28:38
Hallo Zusammen,
nächster Morgen, nächste Enttäuschung.
Nachdem ich gestern die Lösung von Bernd so eingebaut hatte und beim Speichern als .xlsx explizit noch einmal bestätigt habe "nein, nicht mit makros speichern" hat die Datei natürlich funktioniert: Auslistung, Freigabe alles schön.
Heute morgen dann leider wieder die Enttäuschung...
Wie ich ja jetzt schon rauslesen konnte, liegt's daran, dass die Zuordnung mit Namen eine Excel4 Funktion ist ("quasi" Makro ohne VBA).
Da gibt's doch (hoffentlich) noch einen kleinen Workaround, dass das Ganze komplett ohne Makro, VBA, Makroähnliche Funktionen etc. funktioniert
Gruß
Stefan

Bild

Betrifft: AW: ohne VBA oder ohne Excel-4Makro ...
von: ... neopa C
Geschrieben am: 19.11.2015 18:30:40
Hallo Stefan,
... gäbe es mW keine Lösungsmöglichkeit ohne zusätzlichen interaktiven Aufwand.
Die Excel4-Makro-Funktion ist noch kein VBA-Einsatz, sie erfordert jedoch bei einem Einsatz, dass dann die Datei (in Deiner Excel-Version) wie eine Datei mit VBA-Code abgespeichert wird.
Wenn dies bei Dir nicht erlaubt sein sollte, dann kann ich momentan nur auf oben stehendes hinweisen. Sorry.
Gruß Werner
.. , - ...

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Formel funktioniert nur wenn Datei ist .xlsm"