From: MSACSNewb on 10 Feb 2010 19:09 Access 2007 I am able to get my form to display a unique linked image for every record. The image displayed is based on the name of the file stored in a text field - [CAD FILE]. The problem I am having is that if I am on a record then go to another record, if a file doesn't exist matching what is in [CAD FILE] it will continue to show the image from the previously viewed record. What can I do to get it to display my default file ("-.jpg") if there is no file name matching [CAD FILE]? (yes, the file is named "-.jpg"; is this a problem for any reason?) This is the code I did this with a bastardization of the code from the downloaded Picture2K db: Option Compare Database Option Explicit Private Sub cmdClose_Click() On Error Resume Next DoCmd.Close Exit Sub End Sub Private Sub Form_AfterUpdate() On Error Resume Next Me![Image39].Picture = "\\UNCfilepath\" & [CAD FILE] & ".jpg" End Sub Private Sub Form_Current() On Error Resume Next Me![Image39].Picture = "\\UNCfilepath\" & [CAD FILE] & ".jpg" End Sub Private Sub Image39_Click() End Sub
From: Tom van Stiphout on 10 Feb 2010 21:47 On Wed, 10 Feb 2010 16:09:02 -0800, MSACSNewb <MSACSNewb(a)discussions.microsoft.com> wrote: You can test for existence of the file in Form_Current using the Dir function: Private Sub Form_Current() dim strFile as string strFile = "\\UNCfilepath\" & [CAD FILE] & ".jpg" if Dir(strFile) = "" then strFile = "\\UNCfilepath\-.jpg" end if Me.myCadFileControl.Picture = strFile End Sub Note how I also named your picture control appropriately, and got rid of the ugly "on error resume next". -Tom. Microsoft Access MVP >Access 2007 >I am able to get my form to display a unique linked image for every record. >The image displayed is based on the name of the file stored in a text field - >[CAD FILE]. >The problem I am having is that if I am on a record then go to another >record, if a file doesn't exist matching what is in [CAD FILE] it will >continue to show the image from the previously viewed record. >What can I do to get it to display my default file ("-.jpg") if there is no >file name matching [CAD FILE]? (yes, the file is named "-.jpg"; is this a >problem for any reason?) > >This is the code I did this with a bastardization of the code from the >downloaded Picture2K db: > >Option Compare Database >Option Explicit > >Private Sub cmdClose_Click() >On Error Resume Next >DoCmd.Close >Exit Sub >End Sub > >Private Sub Form_AfterUpdate() > On Error Resume Next > Me![Image39].Picture = "\\UNCfilepath\" & [CAD FILE] & ".jpg" > > >End Sub > >Private Sub Form_Current() > On Error Resume Next > Me![Image39].Picture = "\\UNCfilepath\" & [CAD FILE] & ".jpg" > >End Sub >Private Sub Image39_Click() > >End Sub
From: MSACSNewb on 11 Feb 2010 15:04 Sorry, I do not know VB at all. I understand what the original code did, but don't really know how? I don't "speak the language" so to speak... So are you saying to replace ALL my existing code with the code you supplied? If not all, then where would I place it? Thanks for the help! "Tom van Stiphout" wrote: > On Wed, 10 Feb 2010 16:09:02 -0800, MSACSNewb > <MSACSNewb(a)discussions.microsoft.com> wrote: > > You can test for existence of the file in Form_Current using the Dir > function: > > Private Sub Form_Current() > dim strFile as string > strFile = "\\UNCfilepath\" & [CAD FILE] & ".jpg" > if Dir(strFile) = "" then > strFile = "\\UNCfilepath\-.jpg" > end if > Me.myCadFileControl.Picture = strFile > End Sub > > Note how I also named your picture control appropriately, and got rid > of the ugly "on error resume next". > > -Tom. > Microsoft Access MVP > > > > >Access 2007 > >I am able to get my form to display a unique linked image for every record. > >The image displayed is based on the name of the file stored in a text field - > >[CAD FILE]. > >The problem I am having is that if I am on a record then go to another > >record, if a file doesn't exist matching what is in [CAD FILE] it will > >continue to show the image from the previously viewed record. > >What can I do to get it to display my default file ("-.jpg") if there is no > >file name matching [CAD FILE]? (yes, the file is named "-.jpg"; is this a > >problem for any reason?) > > > >This is the code I did this with a bastardization of the code from the > >downloaded Picture2K db: > > > >Option Compare Database > >Option Explicit > > > >Private Sub cmdClose_Click() > >On Error Resume Next > >DoCmd.Close > >Exit Sub > >End Sub > > > >Private Sub Form_AfterUpdate() > > On Error Resume Next > > Me![Image39].Picture = "\\UNCfilepath\" & [CAD FILE] & ".jpg" > > > > > >End Sub > > > >Private Sub Form_Current() > > On Error Resume Next > > Me![Image39].Picture = "\\UNCfilepath\" & [CAD FILE] & ".jpg" > > > >End Sub > >Private Sub Image39_Click() > > > >End Sub > . >
From: Tom van Stiphout on 11 Feb 2010 21:47 On Thu, 11 Feb 2010 12:04:03 -0800, MSACSNewb <MSACSNewb(a)discussions.microsoft.com> wrote: No, and I didn't say that. My code is a replacement for the Form_Current event. If you don't speak VBA, it's probably best not to attempt to change the code. I would recommend brushing up on your programming skills, or hiring someone who can make these and other quality-related changes for you. For example the use of "on error resume next" is rarely a good idea. -Tom. Microsoft Access MVP >Sorry, I do not know VB at all. I understand what the original code did, but >don't really know how? I don't "speak the language" so to speak... > >So are you saying to replace ALL my existing code with the code you supplied? >If not all, then where would I place it? > >Thanks for the help! > >"Tom van Stiphout" wrote: > >> On Wed, 10 Feb 2010 16:09:02 -0800, MSACSNewb >> <MSACSNewb(a)discussions.microsoft.com> wrote: >> >> You can test for existence of the file in Form_Current using the Dir >> function: >> >> Private Sub Form_Current() >> dim strFile as string >> strFile = "\\UNCfilepath\" & [CAD FILE] & ".jpg" >> if Dir(strFile) = "" then >> strFile = "\\UNCfilepath\-.jpg" >> end if >> Me.myCadFileControl.Picture = strFile >> End Sub >> >> Note how I also named your picture control appropriately, and got rid >> of the ugly "on error resume next". >> >> -Tom. >> Microsoft Access MVP >> >> >> >> >Access 2007 >> >I am able to get my form to display a unique linked image for every record. >> >The image displayed is based on the name of the file stored in a text field - >> >[CAD FILE]. >> >The problem I am having is that if I am on a record then go to another >> >record, if a file doesn't exist matching what is in [CAD FILE] it will >> >continue to show the image from the previously viewed record. >> >What can I do to get it to display my default file ("-.jpg") if there is no >> >file name matching [CAD FILE]? (yes, the file is named "-.jpg"; is this a >> >problem for any reason?) >> > >> >This is the code I did this with a bastardization of the code from the >> >downloaded Picture2K db: >> > >> >Option Compare Database >> >Option Explicit >> > >> >Private Sub cmdClose_Click() >> >On Error Resume Next >> >DoCmd.Close >> >Exit Sub >> >End Sub >> > >> >Private Sub Form_AfterUpdate() >> > On Error Resume Next >> > Me![Image39].Picture = "\\UNCfilepath\" & [CAD FILE] & ".jpg" >> > >> > >> >End Sub >> > >> >Private Sub Form_Current() >> > On Error Resume Next >> > Me![Image39].Picture = "\\UNCfilepath\" & [CAD FILE] & ".jpg" >> > >> >End Sub >> >Private Sub Image39_Click() >> > >> >End Sub >> . >>
From: MSACSNewb on 12 Feb 2010 13:59 Sorry, I ran out of time before leaving work yesterday to follow up on this. I did some trial and error and got this to work. > My code is a replacement for the Form_Current event. I replaced both the Form_Current and Form_AfterUpdate events with the code you supplied and it works great. Thanks again for that!!! > If you don't speak VBA, it's probably best not to attempt to change > the code. I would recommend brushing up on your programming skills, or > hiring someone who can make these and other quality-related changes > for you. This is me brushing up on programming. I have made more sense out of trying to do something and then making it work through trial and error then in the classes I took at the CC. The realworld examples set in better than the textbook examples. Again thanks to you and all he people here for providing this support! >For example the use of "on error resume next" is rarely a > good idea. In my searches here to find a way to get images to appear in a form, I kept running into the advice of downloading the Picture2k DB and studying the code to see how it worked. I did that but it had you create a new table and save the file path in one field and the file name in another. It didn't make sense to me to store the file path repeatedly and I already store the file name in a field in my main table [CAD FILE]. I add 2-10 new records and theoreticly 2-10 new PDF files and correponding thumbnail images every day; ~9500 records in main table. So to have the file path stored 9500 times (and growing) didn't make sense. The Picture2k DB might go back a few years and a few versions of Access so maybe the "on error resume next" made more sense then? This is the actual code fom the Picture2k DB: Option Compare Database Option Explicit Private Sub cmdClose_Click() On Error Resume Next DoCmd.Close Exit Sub End Sub Private Sub Form_AfterUpdate() On Error Resume Next Me![ImageFrame].Picture = Me![FilePath] & Me![FileName] ***I replaced everything after "=" with "\\UNCfilepath\" & [CAD FILE] & ".jpg" and was pleasanty suprised it worked!*** Me![txtPath] = Me![FilePath] & Me![FileName] ***I didn't use this as I only wanted the image control*** End Sub Private Sub Form_Current() On Error Resume Next Me![ImageFrame].Picture = Me![FilePath] & Me![FileName] Me![txtPath] = Me![FilePath] & Me![FileName] End Sub Private Sub ImageFrame_Click() End Sub
|
Pages: 1 Prev: Add new record through Form view Next: Command Button not working |