[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt Indesign, Tabellen und Zahlen

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Print/Bildbearbeitung - Photos, Layout, Design
Themen
Beiträge
Moderatoren
Letzter Beitrag

Indesign, Tabellen und Zahlen

olvradam
Beiträge gesamt: 249

4. Okt 2006, 12:50
Beitrag # 1 von 46
Bewertung:
(71407 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo!

Ich liebe ID und hasse WORD. Ich würde am liebsten unsere Geschäftskorrespondenz mit ID abwickeln, gerade auch wegen der OpenType-Features. Was mich bisher noch davon abhält, ist, dass ich in den Tabellen keine einfachen Berechnungen vornehmen kann, sprich, keine Rechnungen erstellen kann.

Gibt es mittlerweile Wege, Scripts, Plugins etc., die mir helfen könnten? Nach meiner Recherche wahrscheinlich nicht, aber wer weiß …

Was wäre ein Workaround? Habt Ihr Erfahrung, was den REIBUNGSLOSEN Import und die Änderung von importierten Excel-Tabellen angeht? Auf welche Fallen muss man achten?

Liebe Grüße

Oliver

(Dieser Beitrag wurde von olvradam am 4. Okt 2006, 12:51 geändert)
X

Indesign, Tabellen und Zahlen

Kai Rübsamen
Beiträge gesamt: 4684

4. Okt 2006, 13:38
Beitrag # 2 von 46
Beitrag ID: #254590
Bewertung:
(71302 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo!

Mir ist nicht bekannt, dass man Indesign durch Script oder plugin zum rechnen bringen kann!

> Was wäre ein Workaround? Habt Ihr Erfahrung, was den REIBUNGSLOSEN Import und die Änderung von importierten Excel-Tabellen angeht? Auf welche Fallen muss man achten?

Import- und Aktualisierungsmöglichkeiten haben wir hier in den letzten 2-3 Monaten ausführlich diskutiert. Nutze hierzu bitte die Suchfunktion des Forums. Inwieweit es allerdings Sinn macht, eine Rechnung in Excel zu schreiben und dann in Indesign zu aktualisieren ist eine andere Sache ... denn man hat ja nicht immer die gleiche Anzahl an Positionen usw.

Wenn du dir aber in Excel ein Template baust wird es sicher auch sauber in Indesign funktionieren.
Möglichkeit 1: Standardschrift Arial, Änderungen durch einfaches aktualisieren der Datei
Möglichkeit 2: Formatierung/Auszeichnungen einzelner Tabellenzellen, Aktualiesierung durch script PopTabFmClip

Ich schreibe meine Rechnungen auch in Indesign, ändere alle Werte per Hand und hatte leider dadurch auch schon mal den einen oder anderen Fehler!


als Antwort auf: [#254581]
(Dieser Beitrag wurde von ruebi am 4. Okt 2006, 13:43 geändert)

Indesign, Tabellen und Zahlen

Martin Fischer
  
Beiträge gesamt: 12783

4. Okt 2006, 14:12
Beitrag # 3 von 46
Beitrag ID: #254603
Bewertung:
(71279 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
> Mir ist nicht bekannt, dass man Indesign durch Script oder plugin zum rechnen bringen kann!

Das ist durchaus möglich.
Dies zeigen ein paar Scriptbeispiele von http://www.hilfdirselbst.org/...ripte+-+Linksammlung unter der Überschrift "Berechnungen".

Die eigentliche Berechnung erfolgt dabei durch das Skript. Die der Berechnung zugrundeliegenden Zahlen und der Platz, wo das Ergebnis erscheinen soll, müssen dem Skript in Form einer eindeutigen Regel mitgeteilt werden. Dies geht z.B. über Zeichenformate (Zahlen/Stellen, die mit Zeichenformaten ausgezeichnet sind) oder über beschriebene (adressierte) Zellen einer Tabelle.

Hier ein einfaches Beispiel, in dem die Zahlen der letzten Spalte einer Tabelle (bis zur vorletzten Reihe) in die Zelle rechts unten summiert werden (der Cursor muß sich in einer Zelle der Tabelle befinden):
Code
// simpleTableCalculation.jsx  

if (app.selection[0].parent.constructor.name == "Cell"){
var myTable = app.selection[0].parent.parent;
var myLastCol = myTable.columns.length-1;
var myLastRow = myTable.rows.length-1;
var mySum = 0;
for (k = 0; k < myLastRow; k++) {
mySum += (myTable.columns[myLastCol].cells[k].contents.replace(",", "."))*1
}
myTable.columns[myLastCol].cells[myLastRow].contents = digitFormatter(mySum);
}

function digitFormatter(x) {
// Quelle: http://www.dcljs.de/faq/antwort.php?Antwort=rechnen_runden#6
var k = (Math.round(x * 100) / 100).toString();
k += (k.indexOf('.') == -1)? '.00' : '00';
var p = k.indexOf('.');
return k.substring(0, p) + ',' + k.substring(p+1, p+3);
}



als Antwort auf: [#254590]
(Dieser Beitrag wurde von Martin Fischer am 26. Mai 2007, 21:55 geändert)

Indesign, Tabellen und Zahlen

Martin Fischer
  
Beiträge gesamt: 12783

5. Okt 2006, 12:50
Beitrag # 4 von 46
Beitrag ID: #254791
Bewertung:
(71245 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Vorhin bin ich über eine PM gefragt worden, wie das obige Skript anzuwenden sei:

Zitat Leider verstehe ich nicht wie es anzuwenden ist. Können Sie mir einen Tip geben?


Diese Frage könnte von allgemeinem Interesse sein, deswegen antworte ich öffentlich.

Zum Sichern eines Skripts siehe die Hinweise unter http://www.hilfdirselbst.org/...amp;t=Skript+sichern

1. Zum Aufbau der Tabelle habe ich einen Screenshot (simpleTable.jpg) angehängt.

2. Vor dem Starten des Skripts muß sich der Cursor in einer Zelle der Tabelle befinden (welche, das ist egal).

3. Das Skript ist so geschrieben, daß es die Zahlen in der letzten Spalte (hier Spalte 6, bei einer 3-spaltigen Tabelle wäre es Spalte 3) addiert und die Summe in die Zelle rechts unten (hier Spalte 6, Reihe 5) schreibt. Das Format der Tabelle, der Zellen und der Zahlen ist egal.
Genaugenommen addiert es nicht alle Zahlen in der letzten Spalte, sondern nur die von Reihe 1 bis 4 (also bis zur vorletzten Reihe, denn in der letzten Reihe soll ja die Summe stehen).

4. Bei nochmaligem Start des Skripts wird der Inhalt der Zelle rechts unten überschrieben.

Ist es so verständlich?
Funktioniert es so?


als Antwort auf: [#254603]
Anhang:
simpleTable.jpg (53.6 KB)

Indesign, Tabellen und Zahlen

Mr. Zwiebelfisch
Beiträge gesamt: 453

5. Okt 2006, 13:10
Beitrag # 5 von 46
Beitrag ID: #254796
Bewertung:
(71235 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hey ho!

Das klappt super. Vielen lieben Dank :-)


als Antwort auf: [#254791]

Indesign, Tabellen und Zahlen

olvradam
Beiträge gesamt: 249

5. Okt 2006, 23:30
Beitrag # 6 von 46
Beitrag ID: #254923
Bewertung:
(71199 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Wow, das klingt ja spannend! Kann man das Script kaufmännisch so erweitern, dass es

1) die Summe adiert, sprich in der Rechnung den Nettobetrag, und den Betrag in der vorvorletzten Zelle der letzen Spalte einträgt,

2) in der Zelle darunter die Umsatzsteuer ausrechnet,

3) um dann in der letzten Zelle die Gesamtsumme (brutto) auszugeben?

Mehr bräuchte es doch für eine einfache Rechnung eigentlich gar nicht und ich wäre Word los ;-)

Liebe Grüße, Oliver


als Antwort auf: [#254796]

Indesign, Tabellen und Zahlen

Martin Fischer
  
Beiträge gesamt: 12783

5. Okt 2006, 23:38
Beitrag # 7 von 46
Beitrag ID: #254925
Bewertung:
(71196 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
> Mehr bräuchte es doch für eine einfache Rechnung eigentlich gar nicht
> und ich wäre Word los ;-)

Na, da will ich mal ein bißchen nachhelfen:
Code
// simpleBilling.jsx   

var MWST = 16/100;
if (app.selection[0].parent.constructor.name == "Cell"){
var myTable = app.selection[0].parent.parent;
var myLastCol = myTable.columns.length-1;
var myLastRow = myTable.rows.length-1;
var mySum = 0;
for (k = 0; k < myLastRow-2; k++) {
mySum += (myTable.columns[myLastCol].cells[k].contents.replace(",", "."))*1
}
myTable.columns[myLastCol].cells[myLastRow-2].contents = digitFormatter(mySum);
myTable.columns[myLastCol].cells[myLastRow-1].contents = digitFormatter(mySum*MWST);
myTable.columns[myLastCol].cells[myLastRow].contents = digitFormatter(mySum*MWST + mySum);
}

function digitFormatter(x) {
// Quelle: http://www.dcljs.de/faq/antwort.php?Antwort=rechnen_runden#6
var k = (Math.round(x * 100) / 100).toString();
k += (k.indexOf('.') == -1)? '.00' : '00';
var p = k.indexOf('.');
return k.substring(0, p) + ',' + k.substring(p+1, p+3);
}



als Antwort auf: [#254923]
(Dieser Beitrag wurde von Martin Fischer am 26. Mai 2007, 22:01 geändert)

Indesign, Tabellen und Zahlen

olvradam
Beiträge gesamt: 249

5. Okt 2006, 23:42
Beitrag # 8 von 46
Beitrag ID: #254927
Bewertung:
(71192 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Cool! Das probiere ich morgen mal aus. Achso: Funktioniert das Skript auch in Indesign CS?

Liebe Grüße, Oliver


als Antwort auf: [#254925]
(Dieser Beitrag wurde von olvradam am 5. Okt 2006, 23:43 geändert)

Indesign, Tabellen und Zahlen

Martin Fischer
  
Beiträge gesamt: 12783

5. Okt 2006, 23:47
Beitrag # 9 von 46
Beitrag ID: #254928
Bewertung:
(71188 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
> Funktioniert das Skript auch in Indesign CS?

Ja.
Und ganz am Anfang kann man die aktuelle Mehrwertsteuer einstellen:
Code
var MWST = 16/100; 



als Antwort auf: [#254927]
(Dieser Beitrag wurde von Martin Fischer am 5. Okt 2006, 23:50 geändert)

Indesign, Tabellen und Zahlen

olvradam
Beiträge gesamt: 249

7. Okt 2006, 12:31
Beitrag # 10 von 46
Beitrag ID: #255154
Bewertung:
(71086 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Klappt ausgezeichnet! Vielen Dank, Martin :-)


als Antwort auf: [#254928]

Indesign, Tabellen und Zahlen

soapboxdesign
Beiträge gesamt: 2

9. Feb 2010, 09:22
Beitrag # 11 von 46
Beitrag ID: #433089
Bewertung:
(65507 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
guten Tag zusammen,

ich bin beim Suchen nach einer Lösung zum Rechnen mit InDesign über diese Lösung gefallen. Funktioniert toll, ich habe das Ganze ein wenig erweitert und an meine Bedürfnisse angepasst.

Das Script multipliziert jetzt zusätzlich die Tabellenfelder Stunden und Netto und rechnet die Endsummen aller Positionen untereinander auf, wie von Martin Fischer so elegant gelöst.

Mein Problem ist gerade, dass bei der Eingabe nur Kommazahlen mit Punkt akzeptiert werden, bei einem Komma als Dezimaltrennzeichen wird NaN ausgegeben.
Kann mir hier bitte jemand auf die Sprünge helfen? Ich komme mit meinen Kenntnissen hier nicht so recht weiter ...

Hier mein Code:
Code
 
// simpleBilling.jsx

var MWST = 16/100;
if (app.selection[0].parent.constructor.name == "Cell"){
var myTable = app.selection[0].parent.parent;
var myLastCol = myTable.columns.length-1;
var myLastRow = myTable.rows.length-1;
var myStunden = myTable.columns.item(3).contents;
var myNetto = myTable.columns.item(4).contents;
var mySum = 0;
var myPrice = 0;
for (k = 0; k < myLastRow-2; k++) {

myPrice = (((myTable.columns.item(3).cells[k].contents))*((myTable.columns.item(4).cells[k].contents)));

myTable.columns.item(3).cells[k].contents = digitFormatter(myTable.columns.item(3).cells[k].contents);
myTable.columns.item(4).cells[k].contents = digitFormatter(myTable.columns.item(4).cells[k].contents);

myTable.columns[myLastCol].cells[k].contents = digitFormatter(myPrice) + " EUR";
mySum += (myTable.columns[myLastCol].cells[k].contents.replace(",", "."))*1 ;

}

myTable.columns[myLastCol].cells[myLastRow-2].contents = digitFormatter(mySum) + " EUR";
myTable.columns[myLastCol].cells[myLastRow-1].contents = digitFormatter(mySum*MWST) + " EUR";
myTable.columns[myLastCol].cells[myLastRow].contents = digitFormatter(mySum*MWST + mySum) + " EUR";
}


function digitFormatter(x) {
// Quelle: http://www.dcljs.de/faq/antwort.php?Antwort=rechnen_runden#6
var k = (Math.round(x * 100) / 100).toString();
k += (k.indexOf('.') == -1)? '.00' : '00';
var p = k.indexOf('.');
return k.substring(0, p) + ',' + k.substring(p+1, p+3);
}


Dennis Wehrmann


als Antwort auf: [#254928]

Indesign, Tabellen und Zahlen

Martin Fischer
  
Beiträge gesamt: 12783

9. Feb 2010, 09:49
Beitrag # 12 von 46
Beitrag ID: #433095
Bewertung:
(65495 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Dennis,

für Berechnungen braucht's den Punkt als Dezimaltrennzeichen.
Ersetze deswegen im string, der für eine Zahlenoperation verwendet werden soll, das Komma durch einen Punkt:
Code
var myString = '123,45'; 
var myNum = Number( myString.replace(",", ".") );


Brauchst Du am Ende im string (etwa Text in der Tabelle) wieder ein Komma, dann ersetze den Punkt im string (also nach der Umwandlung der Zahl in einen string) wieder zurück:

Code
var myNum = 123.45; 
var myString = String( myNum).replace(".", ",");



als Antwort auf: [#433089]

Indesign, Tabellen und Zahlen

soapboxdesign
Beiträge gesamt: 2

9. Feb 2010, 20:49
Beitrag # 13 von 46
Beitrag ID: #433187
Bewertung:
(65418 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

danke vielmals für die Hilfestellung, ich werde mal versuchen, Deinen Ansatz einzubauen.

Viele Grüße
Dennis Wehrmann


als Antwort auf: [#433095]

Indesign, Tabellen und Zahlen

technikfreak
Beiträge gesamt: 4

8. Mai 2011, 11:41
Beitrag # 14 von 46
Beitrag ID: #470886
Bewertung:
(61772 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo zusammen,

jetzt muss ich das Thema leider noch einmal aufwärmen. Versuche gerade aktuell in InDesign ein Rechnungstemplate zu bauen. Ich möchte aber nicht automatisch die letzten drei Zeilen auswählen für Netto, Mwst. und Gesamtsumme sonder über ein einmalig zugewiesenes Zeichenformat. Dieses Zeichenformat befindet sich dann auch in einer anderen Tabelle.

Was genau muss ich ändern, um nicht nach Tabellenzeilen zu gehen sonder nach Zeichenformaten einzufügen?

Vielen Dank und liebe Grüße

Julian


als Antwort auf: [#433187]

Indesign, Tabellen und Zahlen

Martin Fischer
  
Beiträge gesamt: 12783

9. Mai 2011, 07:35
Beitrag # 15 von 46
Beitrag ID: #470914
Bewertung:
(61675 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Julian,

herzlich willkommen im Forum.

Antwort auf: Was genau muss ich ändern, um nicht nach Tabellenzeilen zu gehen sonder nach Zeichenformaten einzufügen?

Erst mal anders herum gefragt: hast Du etwas Erfahrung im Skripten oder brauchst Du einfach eine maßgeschneiderte Lösung?


Wenn ersteres: Kannst Du das Ziel für das Ergebnis (skripttechnisch) beschreiben?
Etwa: eine (die erste oder alle) Fundstelle der Suche nach Text mit einem best. Zeichenformat?

Dazu müsstest Du zunächst die Suchparameter einstellen,
dann die Suche ausführen (dokumentweit oder in einem best. Bereich)
und dann die contents von den Treffern (ggf. Schleife) mit dem Summenergebnis der Tabelle füllen.


als Antwort auf: [#470886]
(Dieser Beitrag wurde von Martin Fischer am 9. Mai 2011, 08:20 geändert)
X

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
14.05.2024

Online
Dienstag, 14. Mai 2024, 10.00 - 10.30 Uhr

Webinar

Prozessoptimierung ist ein Teamsport! Keine Software und keine Maschine allein kann Ihnen helfen, die Effizienzpotenziale Ihres Betriebes maximal auszuschöpfen. Von der Auftragsannahme über die Vorstufe und den Druck bis hin zur Weiterverarbeitung – alles muss optimal ineinandergreifen. Apropos Weiterverarbeitung – in vielen Druckbetrieben fristet sie in Sachen Prozessoptimierung immer noch ein Schattendasein. Dabei liegen hier mittlerweile die größten Einsparpotenziale! In einem Webinar von Horizon und Impressed erfahren Sie, wie Sie diese Einsparungen realisieren können. Horizon, bekannt für innovative Lösungen in der Druckweiterverarbeitung, bietet mit iCE LiNK eine Workflowlösung für die Weiterverarbeitung. iCE LiNK überwacht, visualisiert und analysiert Produktionsabläufe und unterstützt bei der Wartung – damit immer alles reibungslos läuft. Den gleichen Anspruch hat der von Impressed entwickelte Impressed Workflow Server – er ist die smarte PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt. Im Webinar zeigen Ihnen die Experten von Horizon und Impressed, wie beide Lösungen im Team die Effizienz und Produktivität Ihres Betriebes steigern können. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Ja

Organisator: Impressed / Horizon

https://www.impressed.de/schulung.php?c=sDetail&sid=327

Einsparpotenziale in der Weiterverarbeitung
Veranstaltungen
16.05.2024

Online
Donnerstag, 16. Mai 2024, 10.00 - 10.30 Uhr

Webinar

Komplizierte, kleinteilige Aufträge; alles sehr speziell; seit Jahren bewährte Prozesse – da können wir nichts standardisieren und automatisieren! Das sagen viele Großformatdrucker – aber stimmt das wirklich, ist dem tatsächlich so? Günther Business Solutions und Impressed treten in einem Webinar den Gegenbeweis an. Experten beider Unternehmen zeigen, wie Großformatdrucker vom Einsatz zweier bewährter Lösungen profitieren können: • von advanter print+sign von Günther Business Solutions, dem ERP-System für den Großformatdruck, dass alle Phasen der Wertschöpfung im Large Format Printing abdeckt • von Impressed Workflow Server, der smarten PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt Über die Kombination beider Lösungen können Großformatdrucker ihre Prozesse mit modernen Workflows Schritt für Schritt automatisieren – und so zügig deutliche Zeit- und Kosteneinsparungen realisieren. Das Webinar sollten Sie sich nicht entgehen lassen – damit Sie keine Effizienzpotenziale mehr liegen lassen. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Nein

Organisator: Impressed / Günther Business Solutions

https://www.impressed.de/schulung.php?c=sDetail&sid=326

Und es geht doch: Automatisierung im Großformatdruck!