Alle 56535 Zeichen aller Schriftarten anzeigen
01.05.2012 15:06:18
Reinhard
Hallo Rolf,
ich fragte deshalb nach da ich mit meinem XL2007 die Prozedur ZeichentabelleAusgeben nicht zum Laufen brachte.
Permanent kam der Fehler
Systemfehler, dann zwei Zahlen in Hex und Dez, dann Scherwiegender Fehler.
Gefolgt von der Fehlermeldung Nicht ungenügend Speicher.
Ursache habe ich jetzt herausgefunden. Ich komme in alle Module rein außer in frmProgBar.
Nur beim Versuch in das Modul zu kommen kommt auch der Fehler.
Bei Verweisen habe ich stehen:
NICHT VORHANDEN Micorsoft Common Control 5.0 (SP2)
Ich habe frmProgBar entfernt, jetzt klappt alles wieder.
Kannst du mir bitte den Inhalt dieses Moduls zeigen? danke.
Leider nutzt mir deine Mappe nichts. Du benutzt Chr 0- 255. Ich suche was für den Bereich
ChrW 32-65535
Nachstehend der Code den ich u.a. dazu gebastelt habe.
Zumindest bei mir werden nicht druckbare Zeichen als Quadrat dargestellt. Das kann u.U. bei dir anders sein, liegt wohl am Betriebssystem, dortigen Einstellungen o.ä., jedenfalls wwird das angeblich bei
anderen als Strich dargestellt.
Aber ist ja wurscht, ich würde halt gerne die ganzen Quadrate weg haben, sind ja zigtausende :-(
In XL 2000 sieht das so aus wie auf dem untenstehenden Bild.
Wie ersichtlich sind die Zeilenhöhen gewaltig hoch, k.A. warum das so ist:-(
Mir fiel eben gerade per Zufall auf daß die Anzeige in XL 2007 anders ist, da sind weniger Quadrate?
Priorität hat für mich aber erstmal die Nichtanzeige von nicht druckbaren zeichen.
Gruß
Reinhard
Option Explicit
Sub ttt()
Dim Zei As Long, Spa As Long, Schriftarten As Object, Anz As Long
Application.ScreenUpdating = False
Worksheets.Add after:=Worksheets(Worksheets.Count)
Set Schriftarten = Application.CommandBars("Formatting").FindControl(ID:=1728)
Columns(1).NumberFormat = "@"
Range("A1").Value = "Hex"
For Zei = 32 To 65535
Cells(Zei, 1).Value = Hex(Zei)
Cells(Zei, 2).Value = ChrW(Zei)
Next Zei
Columns("A:A").HorizontalAlignment = xlRight
Anz = Schriftarten.ListCount
Range("B32:B65535").Copy Range(Cells(32, 2), Cells(65535, Anz + 1))
For Spa = 1 To Anz
Cells(1, Spa + 1).Value = Schriftarten.List(Spa)
Columns(Spa + 1).Font.Name = Schriftarten.List(Spa)
Columns(Spa + 1).ColumnWidth = 3
Next Spa
Rows(1).Font.Name = "Arial"
With Rows("1:1")
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.Orientation = 90
End With
Range("B2").Select
ActiveWindow.FreezePanes = True
'bei Autofit steigt Excel aus
'ActiveSheet.UsedRange.Columns.AutoFit
ActiveSheet.UsedRange.Rows.AutoFit
Application.ScreenUpdating = True
End Sub