Das Clever-Excel-Forum.de - Treffen
findet vom 15. - 17. September 2017 in Thüringen / Region Großer Inselsberg statt. Hotelbuchung ab sofort möglich.


Automatisch die aktuele Fenstergröße in Tabelle abspeichern
#1
Hallo zusammen.

Ich möchte gerne, dass für jede Tabelle die gerade eingestellte Fenstergröße mit abgespeichert wird und nach dem Laden wieder genau so angezeigt wird.
Der Tipp die STRG-Taste beim Speichern zu drücken, funktioniert leider nur als generelle Lösung für alle Tabellen.
Gibt es hierfür einen Trick/VBA??

Vielen Dank für eine Antwort.

Herbstliche Grüße aus dem Schwabenland
to top
#2
Hallöchen,

die Tabellen in einer Mappe sind doch nicht unterschiedlich groß !?
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
to top
#3
(04.11.2014, 18:11)schauan schrieb: die Tabellen in einer Mappe sind doch nicht unterschiedlich groß !?

aber vielleicht die Zoom-Einstellung?
Gruß Ralf

?mage

Die deutsche Rechtschreibung ist Freeware, d.h. du kannst sie kostenlos nutzen.
Allerdings ist sie nicht Open Source, deswegen darfst du sie nicht verändern oder in veränderter Form veröffentlichen.
to top
#4
Hallo Ralf,

oder es sind Mappen gemeint und nicht Tabellen ...
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
to top
#5
Guten Morgen

Hier habe ich mich falsch ausgedrückt.
Ich meinte komplette Mappen mit mehreren Tabellenblättern.

Danke
to top
#6
Hallo Hermann,

hier eine Variante, in der die Persönliche Arbeitsmappe verwendet wird.
Darin muss ein Klassenmodul und ein normales Modul eingefügt werden.
Solltest Du noch keine Pers.Arbeitsmappe haben, zeichne einfach ein
Makro auf und gib als Speicherort die P.A. an. Die Aufzeichnung kannst
Du dann sofort wieder beenden. Dann hast Du auch schon ein allgemeines
Modul drin. Damit es dann auch klappt, muss Excel komplett beendet werden.
Die Fensterangaben werden dann jeweils in der entsprechenden Arbeitsmappe
unter benutzerdefininierte Eigenschaften abgespeichert und abgefragt.

Hier die Codes:

Code:
' **************************************************************
'  Modul:  DieseArbeitsmappe  Typ = Element der Mappe(Sheet, Workbook, ...)
' **************************************************************

Option Explicit

Dim oKlasseExcel As clsExcelApp

Private Sub Workbook_Open()
  Set oKlasseExcel = New clsExcelApp
  Set oKlasseExcel.ExcelWatch = Application
End Sub



' **************************************************************
'  Modul:  clsExcelApp  Typ = Klassenmodul
' **************************************************************

Option Explicit

Public WithEvents ExcelWatch As Application

Private Sub ExcelWatch_WorkbookActivate(ByVal Wb As Workbook)
  FenstereinstellungenSetzenSpeichern Wb, "Setzen"
End Sub

Private Sub ExcelWatch_WorkbookDeactivate(ByVal Wb As Workbook)
  FenstereinstellungenSetzenSpeichern Wb, "Speichern"
End Sub



' **************************************************************
'  Modul:  m_Fenstereinstellungen  Typ = Allgemeines Modul
' **************************************************************

Option Explicit

Sub FenstereinstellungenSetzenSpeichern(oWb As Workbook, strVorgang As String)
  Dim oProp As DocumentProperty
  Dim Fenster_L As DocumentProperty
  Dim Fenster_T As DocumentProperty
  Dim Fenster_H As DocumentProperty
  Dim Fenster_W As DocumentProperty
  Dim Fenster_S As DocumentProperty
  
  For Each oProp In oWb.CustomDocumentProperties
    If oProp.Name = "Fenster_L" Then Set Fenster_L = oProp
    If oProp.Name = "Fenster_T" Then Set Fenster_T = oProp
    If oProp.Name = "Fenster_H" Then Set Fenster_H = oProp
    If oProp.Name = "Fenster_W" Then Set Fenster_W = oProp
    If oProp.Name = "Fenster_S" Then Set Fenster_S = oProp
  Next oProp
  
  Select Case strVorgang
  
    Case "Speichern"
      If Fenster_L Is Nothing Then
        oWb.CustomDocumentProperties.Add "Fenster_L", 0, 1, Application.Left
      Else
        Fenster_L.Value = Application.Left
      End If
      If Fenster_T Is Nothing Then
        oWb.CustomDocumentProperties.Add "Fenster_T", 0, 1, Application.Top
      Else
        Fenster_T.Value = Application.Top
      End If
      If Fenster_H Is Nothing Then
        oWb.CustomDocumentProperties.Add "Fenster_H", 0, 1, Application.Height
      Else
        Fenster_H.Value = Application.Height
      End If
      If Fenster_W Is Nothing Then
        oWb.CustomDocumentProperties.Add "Fenster_W", 0, 1, Application.Width
      Else
        Fenster_W.Value = Application.Width
      End If
      If Fenster_S Is Nothing Then
        oWb.CustomDocumentProperties.Add "Fenster_S", 0, 1, Application.WindowState
      Else
        Fenster_S.Value = Application.WindowState
      End If
      
    Case "Setzen"
      If Not Fenster_S Is Nothing Then
        Application.WindowState = Fenster_S
        If Fenster_S = -4143 Then
          If Not Fenster_L Is Nothing Then Application.Left = Fenster_L.Value
          If Not Fenster_T Is Nothing Then Application.Top = Fenster_T.Value
          If Not Fenster_H Is Nothing Then Application.Height = Fenster_H.Value
          If Not Fenster_W Is Nothing Then Application.Width = Fenster_W.Value
        End If
      End If
      
  End Select
End Sub

Gruß Uwe
to top


Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Tabelle automatisch füllen Falco 6 96 16.11.2016, 17:21
Letzter Beitrag: Falco
  Excel-Vorlage lässt sich wider erwarten abspeichern Calafati 6 132 21.09.2016, 09:50
Letzter Beitrag: Calafati
  Werte von einer Tabelle in die andere übertragen (automatisch) TheBug 9 328 19.09.2016, 10:52
Letzter Beitrag: TheBug
  Formeln per Macro ausführen und Ergebnisse abspeichern chilly_bang 3 279 20.06.2016, 12:08
Letzter Beitrag: chris-ka
  Formularvorlage mit Daten aus Tabelle automatisch ausfüllen vicky 9 514 28.04.2016, 11:47
Letzter Beitrag: vicky
  Werte pro Tag abspeichern und löschen. Vondor 7 607 15.03.2016, 22:03
Letzter Beitrag: schauan
  Daten automatisch in eine andere Tabelle übernehmen Kai von Goetz 5 707 11.03.2016, 07:59
Letzter Beitrag: Kai von Goetz
  [VBA] einzelnes Arbeitsblatt abspeichern Rabe 31 2.259 18.02.2016, 12:54
Letzter Beitrag: Rabe
  Tabelle automatisch für mehrere Jahre füllen Jenna91 24 1.755 09.01.2016, 12:36
Letzter Beitrag: schauan
  Daten aus anderer Tabelle automatisch auf Spalten verteilen milano49 3 491 06.01.2016, 01:23
Letzter Beitrag: WillWissen

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste