Anzeige
Archiv - Navigation
1884to1888
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
Inhaltsverzeichnis

Excel - XLSB mit Makros

Excel - XLSB mit Makros
02.06.2022 10:56:10
Dema
Moin zusammen,
es mag sein, dass das Problem bereits behandelt worden sind, mir fehlen jedoch die notwendigen Stichworte für eine Suche, um ehrlich zu sein. Daher schonmal sorry vorab, falls das Ganze bereits durchgekaut worden ist.
Zum Sachverhalt. Zur Datenhaltung ist eine Excel Mappe errichtet worden. Diese Mappe besteht aus aus zwei Registern. Register I - Projektübersicht. Register II Metadaten zur Projektliste, Relation wird über Projekt-ID mit Hilfe von S-Verweisen hergestellt. Zur gemeinsamen Nutzung unter 365 mit Makros ist das Dateiformat XLSB gewählt worden, auch in Hinsicht auf die Dateigröße.
Nun, die Mappe enthält zwei rudimentäre Makros.
Erstens, sortieren nach Projekt ID

Sub sortieren()
' Sortieren
ActiveWorkbook.Worksheets("Gesamtuebersicht").ListObjects("Gesamtuebersicht"). _
Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Gesamtuebersicht").ListObjects("Gesamtuebersicht"). _
Sort.SortFields.Add2 Key:=Range( _
"Gesamtuebersicht[[#Headers],[#Data],[Proj. Nr.]]"), SortOn:=xlSortOnValues, _
Order:=xlAscending, DataOption:=xlSortTextAsNumbers
With ActiveWorkbook.Worksheets("Gesamtuebersicht").ListObjects( _
"Gesamtuebersicht").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
Zweitens neue Zeilen hinzufügen.

Sub zeilen_hinzufuegen()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Dim lAnzahl As String
Dim i As Long
Anf:
lAnzahl = InputBox("Anzahl der hinzuzufügenden Zeilen", , 1)
'Prüfen ob eine Zahl eingegeben wurde
If IsNumeric(lAnzahl) Then
For i = 1 To CLng(lAnzahl)
'selektiert in Spalte A den höchsten Wert
Dim rX As Excel.Range
Dim rY As Excel.Range
Dim lngMax As Double
For Each rX In Range("A2:A9999")
If rX = Application.WorksheetFunction.Max(Range("A2:A9999")) Then
Set rY = rX
Exit For
End If
Next
If Not rY Is Nothing Then
rY.Select
End If
Set rX = Nothing
Set rY = Nothing
ActiveCell.Offset(1, 0).EntireRow.Select
' Wählt Zeile unter aktiver Zelle vollständig aus.
Selection.Insert shift:=x1Down
' Fügt eine neue Zeile ein.
Next i
Else
MsgBox "Bitte eine Zahl eingeben !", vbInformation
GoTo Anf
End If
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
Call Calculate
End Sub
Nun zum Problem, bei fortschreitender Bearbeitung werden leere Zellen mit Daten hinterlegt. Diese Daten sind aber nicht sichtbar - führen allerdings dazu, dass alle Zellen (Spalten und Zeilen) angezeigt werden (sofern nicht ausgeblendet). Das Ganze wiederum führt dazu, dass die Dateigröße einfach exorbitant steigt und Ladezeiten entsprechend in die Änonen gehen. Die Zeilen und Spalten können auch nicht einfach entfernt werden, sondern müssen mit einem externen Tool bereinigt werden.
Jetzt habe ich keinen Ansatzpunkt mehr, woran das Ganze liegen könnte. Kann es mit dem Makro "Zeilen Hinzfügen" und Fehleingaben zusammenhängen? Oder ist irgendwas grds. beim Makro falsch? Gibt es vielleicht eine Idee zur Lösung?
Falls notwendig, kann ich auch eine Beispielmappe hinzufügen, müsste aber erstmal die ganzen Daten daraus löschen.
Herzlichen Dank im Voraus!
Viele Grüße
Dema

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel - XLSB mit Makros
02.06.2022 11:37:48
mumpel
Hallo!
Da XLSB auf BIFF beruht, werden auch "unsichtbare Inhalte" gespeichert. Das sind meist Daten der Makroausführung. Gelegentlich muss man dann alle leeren Zeilen und Spalten löschen. Das war früher bei XLS auch schon so.
Gruß, René
AW: Excel - XLSB mit Makros
02.06.2022 12:04:51
Dema
Moin,
verstehe, vielen Dank! Geh eich dann richtig in der Annahme davon aus, dass durch das Makro "Zeile hinzufügen" und der hoch frequentierten Wiederholung dann erheblich dazu beigetragen wird, dass die Daten der Makroausführung in Massen gespeichert werden?
AW: Excel - XLSB mit Makros
02.06.2022 12:06:40
mumpel
Mit der Zeit kann das passieren. Möchtest Du das Problem umgehen solltest Du als XLSM speichern.
Anzeige
AW: Excel - XLSB mit Makros
02.06.2022 12:37:53
Dema
Vielen Dank!! Ich war der Meinung, xlsm könne auf Sharepoint nicht gemeinsam bearbeitet werden. Eben getestet und es funktioniert - muss da was Falsches im Kopf gehabt haben. Vielen Dank nochmal!
AW: Excel - XLSB mit Makros
02.06.2022 18:50:46
ralf_b
das was du möglicherweise darüber im Kopf hattest ist das VBA online (sharepoint) nicht ausführbar ist. Dafür gibts die Powerapps mit denen da so Einiges geht.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige