MS Access – Improved HTML

Here’s yet another long standing demo I’ve been wanting to provide the community for a couple years now.

Origins

Several years ago I developed an e-mailing database.  I originally started out using the Rich Text Format (RTF) provided by Access, but anyone that gets into anything remotely advanced will quickly find out the Microsoft’s implementation falls very short of what is considered proper HTML or nor do RTF fields provide all the bells an whistles you’d expect in any modern tool.

For instance, with RTF, you can’t do simple things like:

  • Justify text
  • Insert links
  • Insert tables
  • Insert images/media
  • Format text
    • Strikethrough
    • Superscript
    • subscript
  • Use predefined formats (p, h1, h2, h3, …)
  • and the list goes on, and on, and …

Then add to that Microsoft doesn’t provide a way to view the raw source code behind the RTF fields and you need to resort to coding to access such information.

Continue reading

MS Access – Improved Charting

Here’s a demo I’ve been wanting to share for years and finally got around to it!

Charting has always been one of Access’ greatest weaknesses in my opinion. When compared to the ease of charting in Excel, Access has been lagging behind for years/decades even. I find the dialogs confusing, and understanding how data series relate to my selected table/fields not to be obvious. Then add to that the fact that Microsoft added new charting capabilities, but not all versions have it… it just a nightmare to manage (open the new charts in older versions and get a blank area!).

Continue reading

Access is Still Alive

I am please to be able to report that Access’ new Program Manager, Ebo Quansah, formally told us today in an online meeting that there will be another release of the Perpetual Licensed version of Microsoft Access in 2022! Access lives on! So, the next person that tells you Access is dead, you can flat out tell them they have heard incorrectly.

Continue reading

Managing User-Level Security in Access 2007+

Here’s another question I see pop up from time to time in the Forums.

Since Microsoft did away with User-Level Security (ULS) in Access 2007+, people often wonder how they can manage ULS; add/remove users, change password, …?

The reality of the situation is that although the commands are not front and center, ie they aren’t listed in the Ribbon anywhere, they are still actually there.  Just hidden!

So the question becomes, how can we access them?

Well, there are 2 ways to do this:

  • Issue the VBA commands directly
  • Customizing the Ribbon

Continue reading

VBA – Retrieve an Outlook Message/Item

I was answering a question to my post VBA – Extract Outlook E-mail Messages where Tom asked a straightforward question

OK so using your code I can store email properties, contents etc.

 

Now I want to be able to instruct Outlook to open one of the emails whose properties I have stored in my Access database. By ‘open’ I mean the equivalent of double-clicking the email in an Outlook folder.

 

Using your code ‘ For Each oPrp In .ItemProperties’ I wrote all of the 90 property/value pairs to a table. There are ‘oPrp.Name’s like ConversationIndex, EntryID, ConversationID which I suspect can be used to reference the exact email in Outlook. But how?

Once again, I thought I’d share my reply and code so it can benefit everyone.

The key to pretty much anything Outlook related is the EntryId property. This property uniquely identifies each item in Outlook: Mail items, Appointment items, … So as long as you grab this piece of information and store it, you can then retrieve the item at a later point in time (assuming the item isn’t deleted or otherwise modified so a new EntryId is generated).

Continue reading

VBA – Convert HEX Color to OLE Color

In recent versions of Access we can enter HEX values in the property sheet to set the various color properties of controls. That said, this is not true in VBA. No clue as to why Microsoft does not allow it, nor do they provide any functions to convert HEX values into the format expected (Long).

In my past post on the subject:

I discussed why using Val() is not reliable with HEX values and offered an old utility of mine which provides a couple functions that you could chain together to convert HEX to OLE.

Continue reading

VBA – Get Processor Id

I was helping someone out in a forum that was trying to determine the computer’s Processor Id to use it as part of a registration system.

Once again WMI automation can enable us to get this information. Below was the function I put together.

Continue reading