Solved

Visual Basic RunTime Error 2114

Posted on 2004-09-21
10
2,925 Views
Last Modified: 2013-11-25
We are getting a Visual Basic error on the Picture property of an Image control in an Access 2002 SP3 report on
Windows XP Professional SP1. The annoying thing is that its happening on only 3 machines while its NOT happening
on several other machines with the exact same version of XP and Access 2002. All machines have the same VBA
references checked.

The "Picture" in question is a small 136 KB TIF file on a network drive. The error message is "Microsoft Visual
Basic RunTime Error 2114. DATABASE name doesn't support the format of the file FILENAME.TIF or it is too large.
Try converting the file to BMP or GIF format."

I cannot find any information about this particular Error Code in msdn.microsoft.com or support.microsoft.com or in
Google. Could perhaps a malicious script be generating this error code? There is also an annoying problem on
these 3 machines where sometimes (not always!) one has to click command buttons twice instead of once to make them
run.

Any information anyone could provide would be very much appreciated. This is costing us a great deal of time and
frustration.

THANKS!

Kathryn
0
Comment
Question by:birstein
  • 3
  • 2
  • 2
  • +2
10 Comments
 
LVL 18

Assisted Solution

by:Data-Man
Data-Man earned 125 total points
ID: 12118678
I sounds like the filters aren't installed on the machines in question.  I think you have to install them as part of the office install.  You may want to check EE, I remember something about this a week or so ago.

Mike
0
 
LVL 41

Accepted Solution

by:
shanesuebsahakarn earned 125 total points
ID: 12118685
Those machines might not have the TIF filter installed. Go to Add/Remove programs and click Change against Microsoft Office, and click Change. Check under Office Shared Features->Converters and Filters->Graphics Filters.

Is the Tag Image File Format (TIFF) one installed?
0
 
LVL 8

Assisted Solution

by:Benjamin_Luk
Benjamin_Luk earned 125 total points
ID: 12119422
When your table field is OLE object. And you insert the picture object from the table view instead of using ADODB.Stream to insert the binary data to the field, and you using ADODB.Stream to output the OLE object to your drive, then load the picture to your picture control, this will cause the problem.

Please use ADODB.Stream to load the picture to your table instead of insert it directly from table view.

P.s. you can create one to record the file type .

Hope this will help you.
0
Three Reasons Why Backup is Strategic

Backup is strategic to your business because your data is strategic to your business. Without backup, your business will fail. This white paper explains why it is vital for you to design and immediately execute a backup strategy to protect 100 percent of your data.

 
LVL 26

Assisted Solution

by:Alan Warren
Alan Warren earned 125 total points
ID: 12119534
Hi Kathryn,

As Mike said; this issue came up last saturday and was solved by will_scarlet7
http://www.experts-exchange.com/Databases/MS_Access/Q_21134398.html#12085089

Alan
0
 
LVL 26

Expert Comment

by:Alan Warren
ID: 12119564
ps...

totally agree with Benjamin_Luk in regard to storing images as Binary Large Objects (BLOBs), there are many benefits to this approach, the least of which is succesfull upsizing and the ability to include image data in action queries such as append, delete, update.
More info here:
  http://www26.brinkster.com/alzowze/blobs.asp

Alan
0
 
LVL 1

Author Comment

by:birstein
ID: 12122645
Alan:

This is not the problem Will Scarlet7 solved because this is Access 2002, not Access 2003. However I will have the network administrator uninstall and reinstall the filters.

Also, it is not a problem of storing images because the picture is not stored in a table. It is an external 139 KB TIF file strored on a network drive, specifically, X:/bob.tif. The only thing stored in an Access table field, tifpath, which contains the string "X:/bob.tif". I then put this field as an invisible field on the report and in the VBA code for the report I reference the string value in this field:

Private Sub Detail_Format(cancel As Integer, FormatCount As Integer)
  imgSignature.Picture = Me.tifpath
End Sub

So no BLOB field is involved. . . .

Kathryn
0
 
LVL 8

Expert Comment

by:Benjamin_Luk
ID: 12129350
If so, please replace the file with another tif file to X:\  drive, and try the testing. Or replace it with one JPG file for testing.
0
 
LVL 41

Expert Comment

by:shanesuebsahakarn
ID: 12129357
I still believe that it is because the TIF file filter hasn't been installed.
0
 
LVL 8

Expert Comment

by:Benjamin_Luk
ID: 12129392
Once more thing, is this imgSignature one Image or OLE Object Frame ? If it is OLE Object Frame, that will not work, please try to use Image

Best Regards

Ben
0
 
LVL 1

Author Comment

by:birstein
ID: 12135202
When I told the desktop tech to make sure the TIF filters were installed for Microsoft Office, he realized that he hadn't assigned the TIF file type to a graphics editing program. The following steps solved the problem. Since everybody assisted in the solution, I've split the points. THANKS!

1. Open My Computer, go to Tools -> Options, select the File Types tab, scroll down to TIF
2. Click the Change button.
3. Click the Browse button and browse to C:\Program Files\Common Files\Microsoft Shared\PhotoEd and double-click on PHOTOED.EXE, click OK, click Close.
0

Featured Post

U.S. Department of Agriculture and Acronis Access

With the new era of mobile computing, smartphones and tablets, wireless communications and cloud services, the USDA sought to take advantage of a mobilized workforce and the blurring lines between personal and corporate computing resources.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When you are entering numbers in a speadsheet, and don't remember what 6×7 is, you just type “=6*7" instead. It works in every cell! This is not so in Access. To enter the elusive 42 in a text box, you have to find a calculator, and then copy the re…
Overview: This article:       (a) explains one principle method to cross-reference invoice items in Quickbooks®       (b) explores the reasons one might need to cross-reference invoice items       (c) provides a sample process for creating a M…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…
In Microsoft Access, learn how to use Dlookup and other domain aggregate functions and one method of specifying a string value within a string. Specify the first argument, which is the expression to be returned: Specify the second argument, which …

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question