Macro, Text im Objektmanager anordnen
#1
Hallo ,
jetzt hätte ich mal eine Frage an unseren Univ-Prof Dr. mak. Koter (auf Wunsch des Mod. korrekte Anrede)

Meinst du, dass man dies mit einem Macro lösen könnte?
Die verschiedenen Textrahmen und Grafiktexte stehen im Objektmanager von der Reihenfolge her durcheinander, diese sollten aber laut ihrer Reihenfolge auf der Seite dort angeordnet sein.


Angehängte Dateien Thumbnail(s)
   
Zitieren
#2
Norre, nur wegen der "political correctness", bitte Univ-Prof Dr. mak. Koter .

Smile das Kraut

Betriebssystem / Grafik-Software: Win 7
Zitieren
#3
norre schrieb:...diese sollten aber laut ihrer Reihenfolge auf der Seite dort angeordnet sein.

Hallo norre,

Ich habe nicht genau verstanden, was Du mit „Reihenfolge“ meinst.

Das Modul im Anhang enthält die SUBs TextOrdBlattrandOben und TextOrdAlpha

TextOrdBlattrandOben ordnet die Texte nach der Position auf dem Blatt.

TextOrdAlpha ordnet die Texte (nach ihren Namen) alphabetisch. Dabei bleiben unbenannte Texte natürlich unberücksichtigt.

Die beiden anderen SUBs werden von den o.g. zum sortieren benötigt.

Falls ich Dich falsch verstanden habe, melde Dich noch einmal.

Gruß

Koter


Angehängte Dateien
.zip   TxTZordnen.zip (Größe: 1,21 KB / Downloads: 8)
Zitieren
#4
Hallo Koter,
oh entschuldige Univ-Prof Dr.Dr. mak. Koter
du bist der Wahnsinn
Das Sub TextOrdBlattrandOben ist genau dass was ich gemeint habe und es funktioniert Super[Bild: e050.gif]

Habe hier alte Kataloge da habe ich nicht auf die Reihenfolge im Objektmanager geachtet, wenn ich allerdings die Texte nach Word exportieren will, müssen die Textrahmen und Grafiktexte, damit es auch in Word stimmt in der richtigen Reihenfolge im Objektmanager stehen.
Dein Macro hat mir eine Menge händischer Arbeit gespart.

Du hast nicht zufällig ne Wunschliste bei Amazon, damit ich dir mal was Gutes tun kann?
Zitieren
#5
Hallo Norre,

nein, eine Wunschliste bei Amazon habe ich nicht. Dafür habe ich jetzt drei akademische Grade!

Wenn aber die Leute von GuttenPlag & Co mitbekommen, dass ich den QuickSort-Algorithmus von dieser Seite gemopst habe, und das auch noch ohne Quellenangabe, dann bin ich wohl wieder ohne Titel.

Wenn Du im Quellcode den folgenden Kommentar hinzufügst, lässt mir meine Doktormutter Unkraut vielleicht wenigstens einen Titel (ein Dr. reicht, Professor muss nicht sein).
Code:
'Der folgende QuickSort-Algorithmus stammt von Dieter Otter (www.vbarchiv.net)


Gruß

Koter
Zitieren
#6
koter schrieb:Wenn Du im Quellcode den folgenden Kommentar hinzufügst, lässt mir meine Doktormutter Unkraut vielleicht wenigstens einen Titel (ein Dr. reicht, Professor muss nicht sein).

Siehste Norre, so entstehen Gerüchte.... :tease:

Koter, Dein doppelter Doktorvater ist allein Norre.

Die Berufsbezeichnung Professor, also ein Gelehrter und Wissenschaftler, von dem Wiki behauptet, es sei kein akademischer Grad, (Dr. → Dr. habil → (Privdoz.) → Berufung als Prof.) hatte mir besser gefallen.

Nehmen Sie es einfach hin, Herr Prof. Dr. mak Koter, denn bis wir Sie mit mit "Eure Spektabilität" anreden, dauert es noch etwas. Smile

Betriebssystem / Grafik-Software: Win 7
Zitieren
#7
Hallo Koter,
darf ich dir noch mal lästig fallen?
Das Macro funktioniert ja super.
So jetzt will ich aber dass da genau umgekehrt ist, also was ganz oben auf der Seite steht soll im Objektmanager unten stehen.
Ich habe schon rumprobiert aber bekomme es nicht hin.
Wie müßte ich das SUB TextOrdBlattrandOben ändern, dass die Anordnung im Om umgekehrt ist?
Zitieren
#8
Hallo Norre,

das fällt nicht lästig.
Tausche die SUB gegen die Folgende aus:

Code:
Sub TextOrdBlattrandOben()
    Dim TextPosStID()
    Dim s As Shape
    i = 0
        For Each s In ActivePage.Shapes
        If s.Type = cdrTextShape Then
                i = i + 1
        End If
    Next
    ReDim TextPosStID(0 To i - 1, 0 To 1)
    i = 0
    TextPosStID(0, 0) = "0.258"
    For Each s In ActivePage.Shapes
        If s.Type = cdrTextShape Then
            TextPosStID(i, 0) = s.PositionY
            TextPosStID(i, 1) = s.StaticID
            i = i + 1
        End If
    Next
    Call QuickSortMultiDim(TextPosStID)
    Debug.Print UBound(TextPosStID)
    ActiveDocument.BeginCommandGroup "Text von Blattpos. Z-Anordnen"
    For i = UBound(TextPosStID) To 0 Step -1
        Set s = ActivePage.FindShape(StaticID:=TextPosStID(i, 1))
        s.OrderToFront
    Next i
    ActiveDocument.EndCommandGroup
End Sub

Erläuterung:
Die letzte For-Schleife läuft jetzt rückwärts.


Gruß

Koter
Zitieren



Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Corel Draw 2019 Text vertikal nilaschmi 5 255 14.02.2024, 17:53
Letzter Beitrag: skifan
  Makro - Text an Rechteck ausrichten benni313 5 324 31.01.2024, 09:20
Letzter Beitrag: benni313
  Corel importiert Text aus PDF nur noch als Sonderzeichen Kay_Maehnert 0 243 10.11.2023, 18:36
Letzter Beitrag: Kay_Maehnert
  Textzeilen in einzelne Text-Objekte aufteilen Karthagos 8 700 01.05.2023, 10:34
Letzter Beitrag: Karthagos
  Text mit innerem Umriss mtemp 2 424 16.03.2023, 07:35
Letzter Beitrag: Piet
  Text in russisch OsCor 3 710 20.11.2022, 14:30
Letzter Beitrag: OsCor
  Kurven wieder in Text umwandeln Karthagos 18 2.713 30.04.2022, 12:24
Letzter Beitrag: koter
  Text in Corel Vorlage anhand von Makro / VBA ändern Olaf 4 1.741 02.03.2021, 11:06
Letzter Beitrag: Olaf
  Objektmanager bzw. Objektansicht organisieren Karthagos 2 753 25.11.2020, 09:23
Letzter Beitrag: Karthagos
  Text drehen Karthagos 3 1.765 15.04.2020, 18:28
Letzter Beitrag: Karthagos