On the Windows 7 Developer desktop, the Windows Theme is set to Windows 7.On the Citrix server (for users) the Windows Theme appears to be Windows 95. It is low graphics.The boxes are square instead of rounded. The selected Form Tabs just barely highlight with a thin line while on Windows 7, the selected Tab completely changes color. A basic Message box in Windows 95 looks square and flat. The title bar is very low graphics as one would expect when graphics were not great. Is there a VBA call that can display the OS Theme that affects MS Access? URL...
I need a search function that will not just open files based on their names but also drill into the documents and search based on what's in it. The only way I can see now is to use the Window's search function (the one at the start button). Is it possible to call that function into access?how do I re-create the search style of the windows search bar for a specific folder? Something like streamreader
I'm having to recode some old MS Access DBs so they will run in the following environments:
Office 2000 on WinXP Office 2003 on WinXP Office 2010 on WinXP Office 2000 on Win7 Office 2003 on Win7 Office 2010 on Win7
When I wrote my code for Office 2000 on WinXP things were simple because directory paths were the same across all computers and I could hard code pathing when using a shell command to launch other files.
My new approach is to make a function call to the Windows registry to determine the default executable and path for opening a file based upon its extension (see apicFindExecutable in basWindows API module).
I'm able to use code to create a shell call and debug print it to the immediate window. If I put my cursor in the immediate window at the end of the shell call and hit [enter] the external file will open as desired. If I try to open the external file directly through code, I get a file not found error.
To recreate the error take the following steps:
(1) browse to files that are accessible from your computer (2) click the PREPARE DATA AND OPEN MAIL MERGE DOCUMENTS command button
Shell function call is made by the fnOpenFile function located in the basOpenFile module. There has to be a trick here that I'm missing.
I build MS Access databases for small businesses. Generating emails from within Access is no problem - I can even use Access VBA to select specific email accounts and email signatures. However, I have not been able to find a way to use Access VBA to select a Theme that was set up in Outlook. If I create a Theme using the Outlook 2010 menu selections: Options / Mail / Stationery and Fonts / Theme, that theme is present every time I generate a new email from within Outlook. But if I generate a new email via Access VBA, that theme is no longer present - the email that VBA generates has no Theme. What Access VBA code do I need to use to select an Outlook Theme - even just the default Outlook Theme?
One thought is that if someone knows the keyboard shortcuts to select an Outlook Theme, I can do the rest. I can use SendKeys. But if there is a more sophisticated way of making the Theme appear on emails generated by Access VBA, I am eager to learn.
Is it possible to display the user name used to log on to windows on a form? I have used the following code to get the machine name to display - but some machines are old and have new users.....
Private Declare Function apiGetComputerName Lib "kernel32" Alias _ "GetComputerNameA" (ByVal lpBuffer As String, nSize As Long) As Long Function fOSMachineName() As String Dim lngLen As Long, lngX As Long Dim strCompName As String
lngLen = 16 strCompName = String$(lngLen, 0) lngX = apiGetComputerName(strCompName, lngLen) If lngX <> 0 Then fOSMachineName = Left$(strCompName, lngLen) Else fOSMachineName = "" End If
I was wondering if i could get some help here. In the startup under tools option in the menu in Access 2003., is there any way of coding it so it would display windows database, allows display status bar and other settings there?
Currently, i have unchecked pretty much everything except "Access special keys" when setting up a certain form to be a startup. By default, we don't want to see all the tables in the windows database but rather the actual start up form.
what we would like to do is to allow only the certain group of people to be able to view the windows database without using "hold on to shift key" button to access to windows database.
I have a lost/found property database form (soft-copy), it works perfectly fine. We enter the details of the found property and then take the print (hard-copy) of the form. Whenever an owner comes to claim his/her item we search through our soft-copy for the specific item/record and then ask them to sign on the relevant hard-copy record after which we cross out the hard-copy and write with a permanent marker "Restored". Whereas in the soft-copy we type in the details that it has been claimed/restored in available text fields. However, is there anyway that I can display a big large banner saying "restored" in front of only that record(s) where item(s) has been restored to the owner. It doesn't have to be a text banner/label, it could also be a picture saying "Restored". I have manage to get a print message box set-up for this but it's too annoying. Every time we pull out an item's record that has been restored, that message box comes up and then we have to click OK to proceed. I can remove it but only if can find a replacement.
I have a website that is asp (not .net) based with an Access DB and I am in the process of replacing an old windows 2000 server with a much faster windows 2003 server. Here lies the problem I have a script as part of the admin that exports data to a csv file. The query joins 4 tables together to get the data needed for the export. On the windows 2000 server it takes 1-5 seconds to execute and have the csv file ready for download. On the window 2003 server it times out. I striped it down to use 2 joins and it worked although it took more like 10-20 seconds to export. This exports a specific range of ID's and the range is normally only 40-50 rows. If I put time stamps in the code the problem is in the query of the database, so I know its not in the file write etc.
I am going to rewrite it to use multible querys instead of one large query, but I have many other sites that I am moving to this server that would work better if I can figure out why it is so slow.
The windows 2000 is a 900 mhz server the windows 2003 is a 2.8GHZ server both have 1 GIG of ram. The database file is on the local drive on both servers. I am guessing it is a difference in the Jet version, I just haven't been able to find a solution to the problem. This uses a DSN connection, configured the same on both servers. I have also tried it as a DSN-less connection with the same result.
I have installed access on the server and to execute the command in access it is <2 sec.
I am not an access expert I normally program in .net and php and use MySQL and MsSQL for databases, we just have these legacy sites that use Access DB's
I am trying to use a textbox value to call vba code and can not get it to work.
I keep getting an error on the call str1 line.
Code:
Sub formscript() Dim str1 As String str1 = [Forms]![fscripts2]![t3] 'MsgBox str1 If str1 = "" Then str1 = "err1" Exit Sub Else Call str1 ' this is where it call the script based on value in textbox End If End Sub
I am facing a problem with ODBC call failed error latly.The problem doesnt occur on my development PC but only on other PC's.I'm a beginer in Access, vba and I cant find a solution to make it work on every machines.
Code:
Dim qSQL As String DATA = "#" & DatePart("m", DATA) & "/" & DatePart("d", DATA) & "/" & DatePart("yyyy", DATA) & "#" qSQL = "SELECT Sum([IL]*[TO])" & _ "FROM PUBLIC_S INNER JOIN PUBLIC_SD ON PUBLIC_S.U = PUBLIC_SD.U " & _ "WHERE (((PUBLIC_SD.DAT)=" & DAT & ") AND ((PUBLIC_SD.ANA)='" & ANA & "') AND ((PUBLIC_SD.IA)='" & ia & "') AND ((PUBLIC_SD.AN_C)='PIMSS')); Set Db = CurrentDb() Set rs1 = Db.OpenRecordset(qSQL)
I have this segment of code that adds data to fields FName and FPath in the table Files. It works fine but the syntax is a nightmare with all the double quotes and symbols.
I have another field in the table Files called CompletedBy that shows who updated the table (they type their name into a textbox Text1 before clicking a command button to run the code). I would like to add this data to the table during the execution of strSQL. All the records added to the table Files will have that value in the CompletedBy field (say, Bob Jones).I tried the below changes but the code doesnt work.
I have 3 event procedure with 3 buttons to make them run.I would like to create another button that can run all procedures togehter. if I copy one of the procedures how do I tell it to run the other 2.
I write Access 2010 apps in VBA that require no knowledge of Microsoft Access on the part of the user. My forms contain all the necessary controls to use the program without relying on any of the Microsoft Access toolbars. I call this "de-Microsofting" the app. When I prepare the .accdb program to create a .accde app, I uncheck every checkbox (Options/Current Database) except "Compact on Close". This works well, but it also hides the Windows taskbar at the bottom of the screen. Some of my users need to be able to jump from my app to others (e.g., Excel) and back without having to exit my app. How can I force the Windows taxkbar to always be on top using VBA or, possibly, some setting?
I have an application that is using SQL Express as a backend and syncing to a SQL database through SQL web synchronization. This all works great and my clients have my custom application to interface with their local database and do work and it syncs back to the corporate database and I've got it scheduled to run in Windows every minute. What I would like to do is have a button or on event set of code that forces that sync pairing to run and I'm not exactly sure how to do that.
I spent all day trying to figure out why sometimes I can call an excel function from access and the value will appear on my form, but for some functions (F.inv, binom.inv), it errors out as "object not supported". I browsed all the available libraries in tools/reference but found nothing that seemed to solve this issue.
I am starting to explore VBA and Modules. I recently found a relativly simple way to add an Audit Log to a database without adding two tables for each table as outlined by Allen Browne.
I used a set of code from fontstuff.com and it works great, except when using a sub form. I belive that it is most likely because the use of the Tag property looks at the subform as a control but it holds no value. I am thinking the VBA needs to be altered or the BeforeUpdate command need to specify what form to look in.
The Before Update code is
Code:
Public Sub Form_BeforeUpdate(Cancel As Integer)
Code: If Me.NewRecord Then Call AuditChanges("SubForm_ID", "NEW") Else Call AuditChanges("SubForm_ID", "EDIT") End If End Sub
AuditChanges is the Module Event name and CustomerID is the unique identifer for a Subform.
Continuing with production of my database I've come across another wall that I'm trying to pass. My aim is when the user press the "Quit" button it will export everything to a file which is stored on Google Drive as google drive is installed on the laptops that will be using this database.
However the problem is Google drive is stored in the computer user files i.e C:UsersstudentGoogle Drive - is there a way to retrieve the name of the user that is logged into windows?
Code:
Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" _ (ByVal IpBuffer As String, nSize As Long) As Long Private Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" _ (ByVal lpBuffer As String, nSize As Long) As Long Function ThisUserName() As String Dim LngBufLen As Long Dim strUser As String
[code]....
However cant get this to work - I think that is probably because i'm declaring this code in the wrong place - I've tried declaring the private functions in a class module and the functions in a module - however no success - How do you set this code up? Or is there a new way to do this?
I have a vbs-script that opens my access database db.mdb and runs the module "Export":
dim accessApp set accessApp = createObject("Access.Application") accessApp.OpenCurrentDataBase("D:Datadb.mdb") accessApp.Run "Export"
accessApp.Quit set accessApp = nothing
This works fine as a scheduled task on a Windows 7 computer.
Is there a way to make this work on a Windows Server 2008 R2 ? When I double click the vbs-file, the file opens instead of runs. And when I create a scheduled task, nothings happens.
I would like to create a custom theme for my INPUT page, however within Access 2003 I only have the option of about 20 predefined themes. I want to insert my companies' logo onto the INPUT PAGE.
What I would like is to save a template, like I have done in REPORTS, so that when I build a INPUT PAGE I can select my own theme to use, based upon my companies' logo, type face et al .,
I was wondering if you can call a textboxes onExit event from another form? On my form a user enters a search criteria into a text box and when they exit the textbox the results are displayed in a listbox. This form is a subform on my main form. I want to be able to call this onExit method from the main form. Is that possible? When I put in txtSearchBox_Exit, I got an error saying Sub or Function not defined.
I have a form with a button to print preview a report. This report needs one input parameter before executing. The computer this will run on is a touch screen and does not have a keyboard. Windows 7 has a "on screen keyboard" program. I want this to run first so that my user can input the parameter.
I have the following which throws an "Invalid procedure Call or Argument"
Sub CallTeclado() Dim RetVal RetVal = Shell("c:windowssystem32osk.exe", vbNormalNoFocus) End Sub
I currently have a button on a form which, when clicked, I would like to do several things:
1) Check if the folder, "folder name (1)" exists 2) If no, make it; if yes, check if the folder, "folder name (2)" exists 3) If no, make it; if yes, check if the folder, "folder name (3)" exists 4) repeat this process until a new folder is made
The code I currently have seems to not work, and makes an infinite loop
Code: Private Sub Export_Click() Dim checker As Integer Dim projPath As String checker = 1
I can currently open a new internet explorer instance, navigate to my URL, then use the .getElementByID to insert my preference into a textbox on the page. Looks like this:
Code: Dim oIE As Object Set oIE = CreateObject("InternetExplorer.Application") oIE.Navigate "URL of my Choice" Do While oIE.Busy Or oIE.ReadyState <> READYSTATE_COMPLETE DoEvents