Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
332to336
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
332to336
332to336
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Excel Bug mit ungroup

Excel Bug mit ungroup
10.11.2003 13:03:02
Roger
Hi,
ich hatte hier schon mal gepostet, dass Diagramme Nach einer Gruppierung defekt sind bzw nach dem ungruppieren die ganze Mappe defekt ist. Ich habe nun mal dieses feature in kurzen Code zusammengefasst. Nehme ich 2 Textboxen und gruppiere und ungruppiere sie 4096 mal, ist die Mappe defekt. Speichere ich sie nun, kommt die Meldung "Kann Datei nicht lesen". So meine lieben MVPs, Excel ist schon toll, aber dieses Feature ist nicht schön. Gibt es eine Excel Version, mit der das Funktioniert? Packt den Code in ein Modul und öffnet eine leere Mappe. Aktiviert die leere Mappe und startet "StarteTest". Nach der Aktion öffnet mal die erzeugten Mappen, oder versucht es wenigstens. Der Code:

Option Explicit

Private Const NameGruppe As String = "Diag"
Private Const Box1 As String = "Box1"
Private Const Box2 As String = "Box2"


Private Function AddTextbox(strPriName As String) As Shape
Dim RetValue As Shape
Set RetValue = ActiveWorkbook.Sheets(1).Shapes.AddTextbox(1, 10, 20, 50, 10)
With RetValue
.Name = strPriName
.TextFrame.Characters.Text = strPriName
End With
Set AddTextbox = RetValue
Set RetValue = Nothing
End Function


Public Sub StarteTest()
Dim objBox1 As Shape
Dim objBox2 As Shape
Dim i As Integer

Set objBox1 = AddTextbox(Box1)
Set objBox2 = AddTextbox(Box2)

objBox2.Top = 30
GruppiereDiagrammElemente

For i = 1 To 4100
If i >= 4095 And i <= 4098 Then
' Bitte einen beliebigen Pfad eingeben, der auch vorhanden ist
ActiveWorkbook.SaveCopyAs ("C:\A" & i & ".xls")
End If
UnGruppiereDiagrammElemente
GruppiereDiagrammElemente
Next
Set objBox1 = Nothing
Set objBox2 = Nothing
End Sub



Private Sub GruppiereDiagrammElemente()
Dim objShape As Shape
On Error Resume Next
Set objShape = ActiveWorkbook.Sheets(1).Shapes(NameGruppe)
If objShape Is Nothing Then
ActiveWorkbook.Sheets(1).Shapes.Range(Array(Box1, Box2)).Group.Name = NameGruppe
Set objShape = ActiveWorkbook.Sheets(1).Shapes(NameGruppe)
End If
If Not (objShape Is Nothing) Then
objShape.Placement = xlFreeFloating
objShape.ZOrder msoBringToFront
objShape.Select
End If
Set objShape = Nothing
End Sub



Private Sub UnGruppiereDiagrammElemente()
Dim ShapeObj As Shape
On Error Resume Next
Set ShapeObj = ActiveWorkbook.Sheets(1).Shapes(NameGruppe)
If Not (ShapeObj Is Nothing) Then
If ActiveWorkbook.Sheets(1).ProtectDrawingObjects Then
Call ActiveWorkbook.Sheets(1).Unprotect
End If
ShapeObj.Ungroup
End If
Set ShapeObj = Nothing
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Alles Roger oder was?
10.11.2003 13:09:51
Michael Scheffler
Hi,

es ist nicht schön, aber warum sollte denn jemand auf die krude Idee kommen, etwas 4096 Mal umzugruppieren? Das Ganze hat doch keine praktische Relevanz.

Gruß

Micha
AW: Alles Roger oder was?
10.11.2003 13:22:27
Roger
Hi,
das ganze macht einen Sinn. Ich schreibe ein Makro, was in den letzten Jahren eine Größe von ca 7 MB erreicht hat und Diagramme auf einem Grafikblatt darstellt. Diese Diagramme bestehen aus Textboxen, einem Chartobjekt und werden gruppiert oder ungruppiert. Wenn ich solche Mappen mit ca 100 Diagrammen auswerte( Daten ziehe, Diagramme einfärbe, entsprechend formatiere usw), gehen diese Mappen kaputt. Und zwar nicht nach 4096 mal, sondern nach 4096/Anzahl Diagramme. Dass heisst nach 40mal auswerten ist die Mappe kaputt. Dieser Zustand tritt leider in letzter Zeit immer häufiger auf. Dieser Zustand hat für mich eine praktische Relevanz.

Roger
Anzeige
AW: Alles Roger oder was?
10.11.2003 15:19:46
Michael Scheffler
Hi,

da hilft halt nur - was sowieso immer ratsam ist, eine Sicherheitkopie zu machen.

Gruß

Micha
Danke für die tolle Hilfe
10.11.2003 15:32:19
Roger
hat sich wohl erledigt, kein Bock auf so ne Antworten

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige