Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1504to1508
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

Spaltenbreite, die 100ste | Herbers Excel-Forum"

Spaltenbreite, die 100ste
24.07.2016 16:30:46
Klaus Reich

Liebe Leute,
ich möchte mir - auf einen halben mm genau - eine Art Lineal = Beschriftung eines Meßgefäßes mit Hilfe einer leeren Excel-Tabelle ausdrucken. Im Wesentlichen also nur nackte Rahmenlinien mit minimaler Beschriftung. Fahrt doch bitte ein Mal mit den Pfeiltasten oder der Maus über die Tabelle A1 bis F9 und markiert eine oder mehrere Zeilen und Spalten ! https://www.herber.de/bbs/user/107205.xlsm Die Fehlermeldung 94 bitte zunächst ignorieren : da geht sicher etwas mit IsNull, OnError, ...
Oft behandelt, jedoch nie wirklich geklärt : warum bekomme ich mit drei versch. Methoden, Breitenangaben, die nicht alle übereinander passen ? Wie hoch und breit ist den nun die Zelle B4 wirklich ? Wie hoch und breit sind A1:A9, B3:C5 oder C3:F8 ?
Beste Grüße, KlausReich@web.de

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spaltenbreite, die 100ste
24.07.2016 18:25:36
Daniel
Hi
Excel ist kein Grafikprogramm, sondern eine Tabllenkalkulation, in der ursprünglich nur Zahlen dargestellt wurden.
Daher ist die Breite, die du einstellen kannst (ColumnWidth) folgendermassen definiert:
ColumnWidth stellt die Anzahl der Ziffern 0 dar, die in der Zelle in Standardschriftart angezeigt werden können.
zur tatsächlichen Breite kommt dann noch der Randabstand und die Rahmenbreite hinzu.
ein weiters problem ist, dass die Spaltenbreite .ColumnWidth nicht stufenlos, sondern nur in 1/7-Schritten verstellt werden kann.
darum ist es schwierig, aus den ColumnWidth der einzelnen Zellen auf die exakte Gesamtbreite (.Width) mehrerer Zellen zu schließen. Dazu müsste die Breite der verwendeten Standartschriftart bekannt sein und du müsstest noch den Wert für Rahmenlinie und Abstand vom Text zur Rahmenlinie hinzuaddieren (dieser Bereich ist für die Zeichen nicht nutzbar und wird daher von .ColumnWith nicht berücksichtigt)
Ich hoffe das reicht um zu verstehen, warum man mit Excelzellen keine exakten grafischen Darstellungen
erstellen kann.
Powerpoint dürfte für so etwas besser geeignet sein oder du erstellt die Skala über Grafikelemente.
der Fehler in deinem Code kommt daher, dass du die Breite oder Höhe immer nur von genau einer Spalte/Zeile abfragen kannst, denn wenn es mehrere sind, könnten es ja auch mehrere verschiedene Ergebnisse geben und das funktioniert dann nicht.
Gruß Daniel
Anzeige
AW: Spaltenbreite, die 100ste
24.07.2016 19:46:06
Klaus Reich
Danke Daniel für Deine rasend schnelle Antwort,
eine Genauigkeit von einem halben, sogar einem viertel mm in der Höhe sollte sich doch auch quick-and-dirty mit einem Excel-Sheet darstellen lassen, zumal ich von einer Meßlatte rede, die im Ausdruck allenfalls 70 mm hoch ist. Frage ich aus einer leeren Tabelle Höhe und Breite ab, gibt mir Excel 15 und 10,71 ( Pixel ? ) an. Laut http://www.office2010-blog.de/de/start/excel/zeilenhoehe-und-spaltenbreite-in-excel-millimetergenau-bestimmen scheint Excel sehr wohl die Zeilen-/Spaltenabmessungen auf den Bruchteil eines mm zu kennen. Zudem müßte ich doch mit dem richtigen Algorithmus ( meine drei "Formeln" ) Breiten und Höhen ermitteln und neu festlegen können, oder ? Selbst die Dicke einer durchgehenden Rahmenlinie und deren Abstand zum Text ist doch irgendwo definiert und kann somit berücksichtigt werden. Du magst Dir bitte noch einmal meine ursprüngliche Anlage ansehen und entschuldigst meine altersbedingte Uneinsichtigkeit. Da muß doch mit lächerlichen gewünschten +/- 0,25 mm auf eine Gesamthöhe von 70 mm etwas gehen ! Danke, Klaus
Anzeige
Da geht nix!
24.07.2016 21:49:10
RPP63
Excel rechnet mit Eiern, ohne das Huhn persönlich zu kennen, Klaus!
Es mag Dir jetzt blödsinnig vorkommen, aber akzeptiere es einfach.
DTP ist alles Mögliche, aber am wenigsten im Bereich einer TK zu suchen!
Gruß Ralf
AW: Da geht nix!
24.07.2016 23:00:41
Klaus Reich
Guten Abend Ralf,
ich will Dir gerne zustimmen. Wenn Meister Bill ( Gates ) die Gewürzmischung seiner Rühreier für sich behält, ist daß OK. Nur, wenn der Große sich schon soweit aus dem Fenster lehnt, innerhalb von MS-Office 2007 eine Konvertierung von Bildschirm-Pixeln zu cm und mm anzubieten, muß dem doch eine Formel zugrundeliegen, die man "zurückentwickeln" kann, oder ? Höhe = 0,035277778 cm also 1/72 Zoll x 2,54 cm, selbst Breite in cm = (Selection.ColumnWidth + 0.71) / 5.1425 findet man in Microsoft-Veröffentlichungen ! Muß ich wirklich ein 2.000,- € CAD-Programm kaufen, um einen 70 mm langen, auf 0,25 mm genauen Maßstreifen auszudrucken und den mit Tesa-Film dann auf ein Gefäß aufzukleben ?
Gut's Nächtle, Klaus
Anzeige
0 € statt 2.000 €
25.07.2016 08:44:17
EtoPHG
Hallo Klaus,
Das ist nun wirklich mit Kanonen auf Spatzen geschossen!
Lade dir ein einfache Mittel wie z.B. PicPick und all Deine Wünsche werde wahr ;-)
Gruess Hansueli
@Klaus: hilferesistent?
25.07.2016 15:18:18
Michael
Hi Klaus,
ich hatte Dir schon intensiv auseinandergesetzt, wie Du mit sehr großer Ausgabe in Excel, kopieren in eine Bildbearbeitung und DORTIGER Skalierung zum Ziel kommen kannst.
Es gibt ja z.B. auch GIMP, das kostet nix.
Ich habe mal mit Makro (die Datei hast Du ja) zwei Spalten mit Linien erzeugt und als GIF abgespeichert: es geht nur darum, das in der Bildbearbeitung so zu skalieren, daß beim Ausdruck cm/mm herauskommen (linke Spalte), dann passen die rechten Linien auch.
Wenn Du nicht PROBIEREN willst, bis es paßt, kann Dir in Excel auch keiner helfen.
Userbild
Schöne Grüße,
Michael
Anzeige
@M: Weil nicht sein kann, was nicht sein darf ;-)
25.07.2016 16:47:03
Michael (migre)
owT
AW: @Klaus: hilferesistent?
26.07.2016 15:00:41
Klaus Reich
Hi Michael,
Für die paar Linien braucht's sicher kein Excel, jedoch 'ne ganze Menge Mathematik. Das mit meinen fast Null Excel- und VBA-Kentnissen. Da ich die Lösung einem ehem. Kollegen präsentieren wollte - der noch weniger Ahnung hat, als ich, wollte ich unbedingt bei Excel bleiben. Heißt, der Kollege sollte nicht noch weitere Software installieren müssen, um meinen Rechenweg nachvolziehen und alles auf seine Bedingungen umrechnen zu können, einfach nur ein paar Zellinhalte ändern müssen.
Danke, Ihr seid und bleibt ein tolles Forum ! Klaus
AW: @Klaus: hilferesistent?
27.07.2016 17:58:17
Daniel
HI
naja wenn die Linien waagrecht zeichnen willst, kann kannst du ja die benögigte RowHeight über den bekannten Faktor aus dem Millimeterabstand einfach ausrechnen und setzen.
bei senkrechten Linien wird's etwas schwieriger, weil die ColumnWidht eben nicht die absolute Breite in Punkten ist, sondern die Anzahl der Zeichen 0, die in der Zelle darstellbar sind.
die für die Umrechnung in Pixelbreite benötgiten Werte wie
- Breite der Ziffer 0
- Rahmenbreite
- Textabstand zum Rahmen
sind Excel sicherlich bekannt, aber du kannst sie in VBA nicht abfragen, sondern müsstest dazu wahrscheinlich tief ins System einsteigen.
der einfachste Workaround für senkrechte Linien wäre daher, in einer Schliefe .ColumnWidth schrittweise solange zu erhöhen, bis die gewünschte Breite in Pixel (Eigenschaft .Width) erreicht ist und dann die Schleife zu stoppen.
Beachte hierbei auch, das sich die .ColumnWidht nur in 1/7-Schritten verändern lässt (man kann zwar kleiner Werte eingeben, aber dann wird gerundet).
Das Einstellen eines kleinen Schriftgrads für die Standardschriftart trägt dazu bei, die Genauigkeit zu erhöhen.
Gruß Daniel
Anzeige
AW: @Klaus: hilferesistent?
29.07.2016 13:07:51
Klaus Reich
Dank in's Forum an alle, die mir geholfen haben !
die Genauigkeit in der Höhe habe ich nun ausreichend hingefummelt. Die Breite des auszudruckenden Meßsteifens schwankt stark, kann aber bei festen ca. 7,5 - 10 mm bleiben. Eine Kleinigkeit möchte ich jedoch noch einbauen : statt Linie für Linie über den Button Zeilenhöhe gehen zu müssen, wäre es elegant, wenn sich Excel die Spalten-/Linienhöhen selbsttätig aus J11 bis J19 "abholen" würde. Oben 10 und unten 5 mm - als Fixwerte - berücksichtgen würde ( explizit in J11 - J19 ), da ich an einer exakten Funktion 3. Grades auf einem weiteren Tabellenblatt ( "kub. Gleichung" ) noch "stricke". Das läßt sich sicher ganz einfach mit 'ner for-next-Schleife realisieren, die das Makro Zeilenhöhe mit dem laufenden Parameter, der Differenz aus J11-J12, J12-J13, ... aufuft. Oder sich sogar die Daten gleich aus dem Blatt "kub. Gleichung" holt. Leider nur nicht mit meinen Fähigkeiten.
Ich hoffe, es gut genug erklärt zu haben. Die wahren y-Werte ( die absoluten Maße der Höhen oder deren Differenzen ) sind unwichtig. Die Beschriftung ist nur das laufende x ( 1 - 7, ohne 0 und 8 ).
Mögl.weise kann man gar einen Meßstreifen erzeugen, der für alle ungraden x eine volle Strichbreite von etwa 7,5 fix und für alle geraden x einen halb- oder drittel-langen Strich zeichnet. Schaut Euch die eingebettete jpg an ! https://www.herber.de/bbs/user/107307.xlsm
Beste Grüße, Klaus
Anzeige
AW: @Klaus: hilferesistent?
31.07.2016 13:36:26
Klaus Reich
Ganz, ganz großen Dank in's Forum !
mit Eurer Hilfe, den Tipps und Hinweisen konnte ich eine schöne, genügend genaue - sogar automatisch generierte - Meßskala erstellen. Das Problem ist damit gelöst.
Weiter so, Klaus

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige