Price Adjuster

This script is part of the Type and Text collection. See the full collection here.ย 

There are two scripts (that I’m aware of) that can be used to adjust numbers and prices: Olav Kvern’s ‘PriceUpdateByString’ script and Steve Wareham’s ‘number_adjuster’. Ole’s script was written for InDesign CS2 and isn’t compatible with newer versions of InDesign, and Steve’s scripts needed some attention to rounding of numbers. Since both scripts needed some attention and as they largely complemented each other (there was only little overlap), the logical thing to do was to write a new script that combined the functionality of both scripts. Ole gave permission to repurpose any of his code, but Steve could not be found and his web site appears to have gone permanently off-line.

Use

The script shows this dialog:

Price adjuster

Operationโ€ƒOptions are Multiply, Divide, Add, and Subtract.

Operatorโ€ƒEnter the operator. To multiply all prices by 2, enter 2. Ole’s script had the possibility to add or subtract a percentage to prices, which can be done with this script too: multiply prices by 1.18 to add 18% to all prices; divide by 1.18 to subtract 18%. You can use . or , for decimals.

Currency symbolโ€ƒOptions are ยฃ, โ‚ฌ, $, ยฅ, ยค, โ‚น, Any, and None. ‘Any’ matches any and all prices, ‘None’ ignores currency symbols so that the script in effect becomes a general number adjuster. If you include a currency symbol, a space after the symbol is ignored.

Replacement currency symbolโ€ƒThe currency symbol selected here replaces the symbol selected at Currency symbol, and the script becomes a currency converter. Select [Ignore] to keep the original currency symbol.

Separatorโ€ƒSelect a separator to be added between the currency symbol and money amount. Options are [None], Fixed space, Third space, Quarter space, Sixth space, Thin space, and Hair space.

Number formatโ€ƒChoose 1,234.56 or 1.234,56. The script really only needs to know the decimal character. It finds numbers with and without thousands separators.

Insert thousands separatorโ€ƒIndicate whether thousands separators should be used in the adjusted numbers.

Number of decimalsโ€ƒSelect the number of decimals to be used.

Roundโ€ƒAvailable only when Number of decimals is 0. Normal: decimals smaller than 0.5 are rounded down, 0.5 and greater, up; Down: rounds a number down to an integer no matter the value of the decimal (the number’s floor value); Up: rounds a number up to the next integer irrespective of the decimal’s value (the number’s ceiling value).

Apply colourโ€ƒAnother feature from Ole’s script which appeared to be popular. It makes checking the results easy. It’s best to create a separate swatch so that you can remove the colour easily. Select [Ignore] if you don’t want to apply a colour.

Targetโ€ƒSelect the target (Document, Story, To end of story, or Selection).

Target character styleโ€ƒLimit the script’s operation to a certain character style. This works the same as using character styles in InDesign’s Find/Change panel.


Version history

7 May 2024: Added support for different types of rounding (normal, floor, ceiling).

7 March 2023: Following a suggestion of a user I added an option, ‘Replacement currency symbol’. This is useful when currencies need to be converted.

29 Dec. 2012: Changed the behaviour of ‘0 decimals’: when you select this, numbers are rounded up to the nearest integer.

4 Feb. 2016: Added the option to limit the search to a character style.

8 Sept. 2015: Fixed a problem with the $ symbol so that US dollar prices are processed correctly.

15 August 2015: Posted.


Peter Kahrel Script Repository
Hosted as a community service, and with deep appreciation, by CreativePro.com


Scripts by Topic | Script Index
Basic Script Installation and Use
How to Modify or Configure These Scripts
Resources for Scripting and Publishing Automation
About This Repository


Repository Home Page


Contact Peter Kahrel


Note to users: You run scripts at your own risk: CreativePro and the author accept no liability for anything that may be caused by any of these scripts. Always take the necessary precautions. We encourage you to save backups and test scripts on copies of your documents.

Bookmark
Please login to bookmark Close

This article was last modified on August 22, 2026

Comments (0)

Leave a Reply

Your email address will not be published. Required fields are marked *

Loading comments...