By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
424,963 Members | 1,714 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 424,963 IT Pros & Developers. It's quick & easy.

access spell checker tool for runtime apps

P: n/a
ARC
Hello all,

I developed a tool a year or so ago for adding your own spell-checker to an
access application. This is mainly for those using the runtime, as you can't
distribute the spell-checker ability. After many complaints from my runtime
customers, I decided to develop my own, which was a good challenge.

I just wanted to give something back to the board / fellow access developers
and offer the source for free. This board has been, and is, a great source
of information and solutions, so I'm just hoping to add to it. I spent some
time on the source this week and worked in support for rich text fields (new
field option in access 2007). I also have access 97 and access 2000 versions
available for download.

If you're in need of a spell-checker solution for your runtime app, please
fee free to download:
http://www.pcesoft.com/Access-Spell-...urce-Code.html

Hope this can help someone. Take care,

Andy

Sep 4 '08 #1
Share this Question
Share on Google+
9 Replies


P: n/a
"ARC" <PC*****@PCESoft.invalidwrote:
>If you're in need of a spell-checker solution for your runtime app, please
fee free to download:
http://www.pcesoft.com/Access-Spell-...urce-Code.html
Looks decent at first glance.

1) Suggestion. Add error handling to the pupDictionary and pupDictionaryEdit forms
VBA code if the developer opens them directly instead of getting the End/Debug
screen.

2) What dictionary did you get your words from? Are there any copyright issues? If
an open source dictionary then are there are supplemental EULAs to be displayed?

Tony
--
Tony Toews, Microsoft Access MVP
Please respond only in the newsgroups so that others can
read the entire thread of messages.
Microsoft Access Links, Hints, Tips & Accounting Systems at
http://www.granite.ab.ca/accsmstr.htm
Tony's Microsoft Access Blog - http://msmvps.com/blogs/access/
Sep 5 '08 #2

P: n/a
"ARC" <PC*****@PCESoft.invalidwrote:
>If you're in need of a spell-checker solution for your runtime app, please
fee free to download:
BTW I like how easy it is to add to an application. Just the following two lines is
nice and simple.

Me!Bodytext.SetFocus 'Replace w/ actual field name being checked.
DoCmd.OpenForm "pupDictionary" 'OnLoad even of pupDictionary will start the spell
check on field w/focus

Tony
--
Tony Toews, Microsoft Access MVP
Please respond only in the newsgroups so that others can
read the entire thread of messages.
Microsoft Access Links, Hints, Tips & Accounting Systems at
http://www.granite.ab.ca/accsmstr.htm
Tony's Microsoft Access Blog - http://msmvps.com/blogs/access/
Sep 5 '08 #3

P: n/a
I haven't tried it yet, but thanks for sharing!

Chris
Microsoft MVP
ARC wrote:
>Hello all,

I developed a tool a year or so ago for adding your own spell-checker to an
access application. This is mainly for those using the runtime, as you can't
distribute the spell-checker ability. After many complaints from my runtime
customers, I decided to develop my own, which was a good challenge.

I just wanted to give something back to the board / fellow access developers
and offer the source for free. This board has been, and is, a great source
of information and solutions, so I'm just hoping to add to it. I spent some
time on the source this week and worked in support for rich text fields (new
field option in access 2007). I also have access 97 and access 2000 versions
available for download.

If you're in need of a spell-checker solution for your runtime app, please
fee free to download:
http://www.pcesoft.com/Access-Spell-...urce-Code.html
--
Message posted via http://www.accessmonster.com

Sep 5 '08 #4

P: n/a
ARC
Thanks, Tony. I forgot to change that. If you open the pupDictionaryEdit
form without pupDictionary opened, it does error out. Would be nice for
developers to test the form without the other opened.

I believe I searched google and found a generic list of words a few years
back for both US and UK variations, then dumped them to tables. There were
no copyrights on the page that I could see, and I do remember looking for
that. I'll have to do a search again when I get a chance, to see if I can
pinpoint the site where I originally found the list. Again, it's been a few
years since I imported the word list into tables.

Thanks for the feedback, Tony.

Andy
"Tony Toews [MVP]" <tt****@telusplanet.netwrote in message
news:lc********************************@4ax.com...
"ARC" <PC*****@PCESoft.invalidwrote:
>>If you're in need of a spell-checker solution for your runtime app, please
fee free to download:
http://www.pcesoft.com/Access-Spell-...urce-Code.html

Looks decent at first glance.

1) Suggestion. Add error handling to the pupDictionary and
pupDictionaryEdit forms
VBA code if the developer opens them directly instead of getting the
End/Debug
screen.

2) What dictionary did you get your words from? Are there any copyright
issues? If
an open source dictionary then are there are supplemental EULAs to be
displayed?

Tony
--
Tony Toews, Microsoft Access MVP
Please respond only in the newsgroups so that others can
read the entire thread of messages.
Microsoft Access Links, Hints, Tips & Accounting Systems at
http://www.granite.ab.ca/accsmstr.htm
Tony's Microsoft Access Blog - http://msmvps.com/blogs/access/
Sep 5 '08 #5

P: n/a
"ARC" <PC*****@PCESoft.invalidwrote:

On playing around with the utility I have a few more suggestions.

1) Suggestion about the SuggMatch table. I see that is a temporary table in the FE.
Each time you hit a word you recreate that table to fill the list box. I'd suggest
using a temporary tables MDB to avoid significant bloating of the FE MDB. Just
running the sample code in your MDB bloated the MDB by 1.5 Mb.

See the TempTables.MDB page at my website which illustrates how to use a temporary
MDB in your app. http://www.granite.ab.ca/access/temptables.htm

2) Is it possible to leave that table with all the suggested words from a to z? So
as to avoid the slight delay when displaying the suggestions? Sure it will take more
room but what the heck.

3) Now if you wanted to get real fancy, and I wouldn't worry about it for right now,
is to fetch the top, left, width and height positions of the text control. then
attempt to position the spell check form so it doesn't overlap the text control.
I'd further suggest to try to display it lower if possible and then higher if
possible. If neither are possible then as low as possible so that your form overlaps
the control but doesn't go below the bottom of the Access window.

I quite like the look and feel of your utility. I think you've done a nice,
professional job with it.

Tony
--
Tony Toews, Microsoft Access MVP
Please respond only in the newsgroups so that others can
read the entire thread of messages.
Microsoft Access Links, Hints, Tips & Accounting Systems at
http://www.granite.ab.ca/accsmstr.htm
Tony's Microsoft Access Blog - http://msmvps.com/blogs/access/
Sep 5 '08 #6

P: n/a
ARC
Hi Tony,

Those are great suggestions!

As an aside, I use temp tables in that way many times, and I do have a bloat
problem with my main application, Instant Quote Pro. One thing I tried to
do, but I'm not even sure this helps, is to offload temp tables such as the
one you're referring to, to a local workspace.accdb file. But, I'm not
convinced the "bloat" hit ends up in the temp database, as I think it still
winds up the in the program file. I'll have a look at your link to see if
this helps with the bloat in my main app.

For the suggestions table, one could comment out the openquery line that
delete's all the recs in the suggmatch table.

I also like your idea of positioning the form, as the first thing I do when
spellchecking is to move it out of my way.

I gave a demo of this to my brother, and his favorite part was that it
scrolled and highlighted the words as it checked them, which he hadn't
really seen before. I had a problem where, if it hit a bad word, it would
stop the scrolling when you resumed the check, but a simple DoEvents took
care of that. He also suggested I ignore weblinks, which I added this past
week.

I'm sure there could be speed improvements. In the function that builds
suggestions, I ended up finding the need to add another field to the
dictionary tables for word length. So if you add words manually to the
table, you'll need to add the length as well. As for suggestions, I'll only
look at words that are within a few characters of the length of the
misspelled word. Your suggestion of not wiping out the SuggMatch table each
time could improve speed.

I found on a vista machine, that the 97/2000/2007 versions were all very
fast. On an older xp machine, the speed on the access 97 version won out
(older software always tends to run faster on older hardware. good old
planned obsolescence!)

Thanks again,

Andy

P.S. I did another search last night to see if I can find the same site
where I found the files of words, and couldn't find it within the first 2
page results.
"Tony Toews [MVP]" <tt****@telusplanet.netwrote in message
news:2p********************************@4ax.com...
"ARC" <PC*****@PCESoft.invalidwrote:

On playing around with the utility I have a few more suggestions.

1) Suggestion about the SuggMatch table. I see that is a temporary table
in the FE.
Each time you hit a word you recreate that table to fill the list box.
I'd suggest
using a temporary tables MDB to avoid significant bloating of the FE MDB.
Just
running the sample code in your MDB bloated the MDB by 1.5 Mb.

See the TempTables.MDB page at my website which illustrates how to use a
temporary
MDB in your app. http://www.granite.ab.ca/access/temptables.htm

2) Is it possible to leave that table with all the suggested words from a
to z? So
as to avoid the slight delay when displaying the suggestions? Sure it
will take more
room but what the heck.

3) Now if you wanted to get real fancy, and I wouldn't worry about it for
right now,
is to fetch the top, left, width and height positions of the text control.
then
attempt to position the spell check form so it doesn't overlap the text
control.
I'd further suggest to try to display it lower if possible and then higher
if
possible. If neither are possible then as low as possible so that your
form overlaps
the control but doesn't go below the bottom of the Access window.

I quite like the look and feel of your utility. I think you've done a
nice,
professional job with it.

Tony
--
Tony Toews, Microsoft Access MVP
Please respond only in the newsgroups so that others can
read the entire thread of messages.
Microsoft Access Links, Hints, Tips & Accounting Systems at
http://www.granite.ab.ca/accsmstr.htm
Tony's Microsoft Access Blog - http://msmvps.com/blogs/access/
Sep 5 '08 #7

P: n/a
ARC
You're welcome, Chris! Hope it's a useful addition.

"Chris O'C via AccessMonster.com" <u29189@uwewrote in message
news:89b822c878048@uwe...
>I haven't tried it yet, but thanks for sharing!

Chris
Microsoft MVP
ARC wrote:
>>Hello all,

I developed a tool a year or so ago for adding your own spell-checker to
an
access application. This is mainly for those using the runtime, as you
can't
distribute the spell-checker ability. After many complaints from my
runtime
customers, I decided to develop my own, which was a good challenge.

I just wanted to give something back to the board / fellow access
developers
and offer the source for free. This board has been, and is, a great source
of information and solutions, so I'm just hoping to add to it. I spent
some
time on the source this week and worked in support for rich text fields
(new
field option in access 2007). I also have access 97 and access 2000
versions
available for download.

If you're in need of a spell-checker solution for your runtime app, please
fee free to download:
http://www.pcesoft.com/Access-Spell-...urce-Code.html

--
Message posted via http://www.accessmonster.com
Sep 5 '08 #8

P: n/a
ARC
Oh, wait. You couldn't just comment out the part that wipes out SuggMatch
each time. You would also have to clear the matchnum field, otherwise, you
would get suggestions of past misspelled words.

Andy
"Tony Toews [MVP]" <tt****@telusplanet.netwrote in message
news:2p********************************@4ax.com...
"ARC" <PC*****@PCESoft.invalidwrote:

On playing around with the utility I have a few more suggestions.

1) Suggestion about the SuggMatch table. I see that is a temporary table
in the FE.
Each time you hit a word you recreate that table to fill the list box.
I'd suggest
using a temporary tables MDB to avoid significant bloating of the FE MDB.
Just
running the sample code in your MDB bloated the MDB by 1.5 Mb.

See the TempTables.MDB page at my website which illustrates how to use a
temporary
MDB in your app. http://www.granite.ab.ca/access/temptables.htm

2) Is it possible to leave that table with all the suggested words from a
to z? So
as to avoid the slight delay when displaying the suggestions? Sure it
will take more
room but what the heck.

3) Now if you wanted to get real fancy, and I wouldn't worry about it for
right now,
is to fetch the top, left, width and height positions of the text control.
then
attempt to position the spell check form so it doesn't overlap the text
control.
I'd further suggest to try to display it lower if possible and then higher
if
possible. If neither are possible then as low as possible so that your
form overlaps
the control but doesn't go below the bottom of the Access window.

I quite like the look and feel of your utility. I think you've done a
nice,
professional job with it.

Tony
--
Tony Toews, Microsoft Access MVP
Please respond only in the newsgroups so that others can
read the entire thread of messages.
Microsoft Access Links, Hints, Tips & Accounting Systems at
http://www.granite.ab.ca/accsmstr.htm
Tony's Microsoft Access Blog - http://msmvps.com/blogs/access/
Sep 5 '08 #9

P: n/a
Not that this is easy, but something I've always wanted to see in a spell
checker is an awareness of syntax. For example, if I add a word to the
dictionary, I'd love it if it asked me what part of speech it is, and then
offered me the opportunity to add the inflected forms as well.

So if I added the noun dog to the dictionary, I'd like to also be able to
add dogs (subjective plural), dog's (possessive singular), dogs'
(possessive plural). It always annoys me a little bit when I have to add a
word to a dictionary multiple times because the various versions are all
slightly different.

- Carlos
Sep 11 '08 #10

This discussion thread is closed

Replies have been disabled for this discussion.