Link to home
Create AccountLog in
Avatar of 2toria
2toriaFlag for United Kingdom of Great Britain and Northern Ireland

asked on

Control size on continuous form

Hi there experts.

I've got a set of data which I'd like to display using continuous forms.  One of those pieces of data is a percentage.  

I'd like a way of showing that percentage in each row of the form graphically using a bar.  Is this possible at all?  I was thinking of maybe setting up a blank, coloured label and finding some way of using VBA to change its length based on each percentage value but I've a feeling that won't work.

Can somebody help me or make any suggestions?

Thanks,
Matt
Avatar of Arno Koster
Arno Koster
Flag of Netherlands image

IF you are using excel 2007 or newer, take these steps as described in

http://msdn.microsoft.com/en-us/library/bb229709(v=office.11).aspx

to enable conditioning formatting (bar)



similar to :
 IC79019.gif
Avatar of 2toria

ASKER

Unfortunately its 2003 I'm using...
Avatar of Rey Obrero (Capricorn1)
you can do this
 assuming the percentage field is [pct]

add a column to your query, like this

BarChart:string([pct]*100,"|")

try this first using a query, not sure how it will respond in a continuous form
Take a look at the regular progress bar and the capacity bar in the following sample which is built with native Access controls.  Should be able to duplicate that in a subform.  Only trick would be to make sure that the controls are bound to an underlying field.

JimD.
ProgressBar.zip

 Cool idea BTW.  Don't have time at the moment, but if you get stuck on this let me know.

JimD.
Without the use of a third-party control, I'm not sure there's a way to show a progress bar on continuous forms. You can, however, "fake" one with a textbox and function.

For purposes of illustration, let's assume the field that has your percentage is named "PERCENTAGE"

Create a new textbox on your form and enter the following:

=String([PERCENTAGE],"|")

This will repeat the "|" character [PERCENTAGE] times. For example, if [PERCENTAGE] is 55, you would see 55 "|" characters in that field.

If your percentage is decimal (e.g. 0.55 rather than 55), simply multiply the value by 100.

=String([PERCENTAGE]*100,"|")

If you don't want to truly show that many "|" characters, simply divide your percentage by some reduction factor:

=String([PERCENTAGE]/5,"|")

or

=String([PERCENTAGE]*100/5,"|")

I found that Arial 8 Bold is a nice font to use to make it appear somewhat like a progress bar. You can obviously use any character you want. The "|" is fairly narrow which makes it work well.

Chris
In a "Continuous" form, this will be tricky.

In a "Report" this is easy.

Unfortunately making the bar "Transparent", (at least in the way that "transparent" means in Excel (ie.:Opacity)), is not directly possible, so you will have to put the Value and the "Bar" in separate controls.

So try something like this:

JeffCoachman
untitled.JPG
Access-EEQ26714488SimulatedBarCh.mdb
ASKER CERTIFIED SOLUTION
Avatar of Rey Obrero (Capricorn1)
Rey Obrero (Capricorn1)
Flag of United States of America image

Link to home
membership
Create an account to see this answer
Signing up is free. No credit card required.
Create Account