I want to set the On Click Event of a button to unlock the current control a user is on. I know the code to set the property of a named control, but I don't want a button for every control I want to unlock. Is there a 'Me' option for controls?
What's the best way to lock down form controls after the user has entered data into them? I will have a button that reads "Save Record" that will make it so the records cannot be accidentally (or intentionally) changed after the button is clicked.
So I am creating a Complaint Tracking Database with Access 2013. In my 'complaint entry form' I have added to ability to "Open" and "Close" the complaint. While the complaint is open the user is able to enter/edit data in the complaint (new or old). When the complaint is "Closed" (done so with a button on the form that prompts the user to enter a date of their choice) the user should not be able to enter/edit data in the given complaint. In my original thinking, I placed checks on various events (on load, after update, on click) that checked to see if the current complaint had a date in the "Close date" field.
If the close date field was null then that meant that the complaint was open and the the controls would NOT be locked. If the close date field was NOT null (i.e. a date was present) then the complaint was closed and the main form fields were locked but the data was still viewable and unless they "re-opened" the complaint they could not change the data.
Now, in the complaint entry form, I have a subform that acts as a action tracker that is used by the user to keep track of the actions taken on the complaint (i.e. they requested documentation from such and such on this date..etc). My problem through all of this is upon closing the complaint and locking the main form controls, my subforms data just vanishes! At first I figured the problem might be with the linking of master and child fields, so I made sure that I left the ID in the main form unlocked when I loop through my controls during the locking process. This did not solve my problem. Code below:
Private Sub Form_Load() Dim ctl As Control If Not IsNull(Me.close_date) Then Me.FormHeader.Visible = True Me.btnClosed.Enabled = False Me.btnOpen.Enabled = True For Each ctl In Me.Controls
I have a continuous form based on a query. I would like to have a button or control that performs some command on only one certain record. In other words, the user sees the record he wants, clicks a button and it changes the value or changes the color. When I add a button to the form, it appears next to each record and performs the same command to each record. I have tried different controls, but get similar results with each one. Even a single form seems to do the same thing, but on different pages.
Am I missing something? Or maybe I am not following the concept of the form.
I have a music database in which I keep track of my CDs and how many times I've listened to them. I have a report that uses grouping to show me the total listens for each artist for each year - the totals are in a group footer, with nothing in the detail section of the report. It looks something like this:
The first line is the column header showing years (last 2 digits for space reasons).
The second and subsequent lines are created in the group footer section, first is the artist name, then the Sum of listens for all titles by that artist in the year given ([Sum of Listens1994]).
This report works perfectly.
Here's what I want to do, and I can't get it to work:
In the above lines of data, let's say that the earliest title for BAND1 is from 1975, and the earliest title for BAND2 is from 2001. My yearly counts start in 1994. Therefore, there were listens for BAND1 prior to 1994, but there weren't any listens for BAND2 prior to 2001.
GOAL: Instead of showing "00" on the BAND2 line for years 1994-2000, I want them blank.
I've put a conditional format code in OnFormat for the group footer section, telling Access to turn visibility off for the text box control ([Sum of Listens1994] etc) if the [Earliest] field (which contains 2001) is greater than the year being displayed (1994 first, and so on). This, which seems like it should work, makes no difference. Oddly, if I put a F9 code break on the If statement, it never breaks, which makes me believe the code is never even being executed.
I do have prior experience with controlling field visibility in forms and reports, so the concepts aren't new to me. I feel like the big difference with this one is that it's in the group footer section rather than the detail section. [Access 2013]
I've got some forms that I've set to lock controls based on an added tag. I have a loop that goes through the entire form and disables (controlname.enabled = false) or locks (controlname.locked =true) all the controls with that tag.
This appears to work fine when the form is on a blank record but when an existing record is opened, the controls that have data in them are no longer locked or disabled (empty controls are still locked). Is there an explanation for this behavior? I don't want to disable the entire form because there are controls that I want the user to be able to always access. I started by just disabling them, then when I noticed the problem I tried locking them instead but it happens with both. Is there another property I can try that will really lock them if they have data in them or not?
I have a database where I record grades for my students. I would like to create a macro so that every time I record a grade as an "F", the student will receive an email that will contain an attachment of their scores. A lot of the information I want to include in this email is in several different tables. So to make it easier, I have created a query that lists the following:
Students name (SName) Student's email (SEmail) ID# of the form I use to record their grades (ID) ID# of the studen'ts work (WorkID) Date of their work (CreatedDate) Date I graded their work (AuditDate) Grade="F" (Accuracy)
How can I create something that will automate emailing of this information--to the individual student with only their information? I am using Access 2010. If I can't automatically send the emails, I would like to create a button in my audit screen that will send a report containing that student's information to them.
I have created a database that generates a report with customer debts. I have a lot of customers and in a report each page is a different customer with individual debts info. What i would like to do is to create a button and distribute individual report page as pdf to individual customer by email. I'm using Lotus notes. I have searched the forums i found something but it was not what i was looking for.
I'm sure this is here somewhere but I just can't find it.
I have a form where a selection of suppliers are selected, I then want to email each supplier a report attachment - headed up with their particular details - for them to complete and return.
I can use the SendObject to send one email with all reports attached, how do I split it up? Can I split it up?
All my records are displayed on a form. Upon clicking on their respective 'View' button, I would like to open that particular record. How can I do that? I have attached a screenshot for better clarity. Thanks in advance for the help!
If i split my Data base into a front and back end how would i restrict certain users only to input data on certain forms. Also how would i prevent them from accessing certain information.
I've just created a form and I'm trying to move and size the fields but they seem to be grouped together and whatever I do to one happens to all of them. I select one field and just that field has the orange outline but when I move it they all move.
I have a report , which i print every month and it consist of of more than 500 pages. This report is based on a Query called L_Inv2. i want to filter and loop this report based on the filed AccountReference with in the query. And save as PDF for individual accounts.
i have also created another query based on the L_Inv2, Called L_Inv4 which only got the record of account numbers as a AccountReference
i am trying to use below code but some how this is not working.
Code: Private Sub Command43_Click() Dim db As DAO.Database Dim rs As DAO.Recordset
I created a query that shows everyone who has a specific date field blank. Now want to make those names clickable so that it opens a specific form with a certain record related to that individual in the query. Each line with a different individual should open a different person on the form and their corresponding record.
I am really new to all of this and used to use excel for this stuff.... yes I know... I can hear the screems already .......... :):eek::rolleyes:
What I am trying to do is lock some fields in a form when they are entered so the data can not be changed after they move onto the next record. I think this might be done in the table but can not be sure.
Can anyone point me in the right direction? or some pointers please. Any help would be good.
I can't seem to find any answers to this maybe i am asking the wrong question, or its so easy nobody asked.
I am viewing / editing some records in a form, I want to view all of the records but only allow edits to records with forms with tblData.Locked = false.
I have 4 users entering data via aform. The database is located on a shared drive. They are getting errorsthat the record is locked. I believe this happens when 2 or more people open the form and are trying to enter data at the same time. Is there a way to have each person lock a new record on open at the form? or is there a better way to handle this? I'm new at this and am working my way through.
I am developing a simple database in Access 97, where users have to enter values manually into a form. There is one field called product. Depending on that entry, either field language or country would have to be blocked to avoid invalid entries. Do you have any ideas on how to approach that problem?
I have and order entry/lookup form with a subform to view the line items on the order. Once an order has been saved and status is ‘placed’ I want the records for that order to be locked.
I would also like to display a message box with a yes/no answer to confirm that they want to issue the order and if they confirm then lock the record otherwise return them to the open order.
I can't find out how to do this, but I'm sure it can be done.
I am opening a form, from another form, that is based on a table of 20000 records.
I am using the WHERE criteria to do this, code is included below. I need to provide database access to several users on a network (and only want to lock the record that the user has searched for), and was wondering if this mode of data access will lload and or lock all 20 000 records on the users sytem, or if it will just load and lock the specific record that has been opened using the WHERE condition to open the form...
I have 4 questions (4 fields) in a form. 2 are drop down menu type and 2 are open text fields.I would like to limit the user from entering data in the fields if one has been answered. for example: if Question one is answered, question 2, 3 and 4 should be locked and should not allow the users to fill in anything. How do I create that Locking system?
How can i apply the following code to the immediate record in my subform. I would like when the assigned check box value = true, then the fields for that record become locked.
Ive written the following code to an onclick event for a check box labeled "assigned" on my form, the problem is it executes on all the records in my form.
Q. How do i apply the code to only the immediate record?
Private Sub Assigned_Click() If Me.Assigned.Value = True Then Me.Serial_Number.Enabled = False Me.Component_Group_ID.Enabled = False Me.TypeID.Enabled = False Me.Description.Enabled = False Me.Status.Enabled = False
I'm using Access 2003.I'm trying to create a command for a form that will allow editing or lock all fields, so that records are protected from accidental edits.AllowEdits in the form is set to False by default.I've used the below code to allow a user to unlock the form:
Private Sub cmdEditRecord_Click() If Me.AllowEdits = False Then Me.AllowEdits = True Else Me.AllowEdits = True End If End Sub
And this works without issue.However, I want to create a second button to lock the form again.
Private Sub cmdLockRecord_Click() If Me.AllowEdits = True Then Me.AllowEdits = False Else Me.AllowEdits = False End If End Sub
Seems logical that I should just be able to reverse the true/false but this does nothing!I've also tried the below code:
Private Sub cmdEditRecord_Click() Me.AllowEdits = Not (Me.AllowEdits) End Sub
To toggle between editing/locked, with the same results - ie, can switch to editing, but can't then turn it off.
how to make my form controls change size / position as my form is resized / loaded on a computer with a different resolution. Several of the tutorials out there suggest putting code on the "on resize" property of the form. When I looked at the Northwind database to try to mimic their code however, it looks like they must be doing something different as there is no on resize code under the form properties and I was unable to find the code they do use.
I am trying to open a form in design mode and add controls, this i have done. I am doing this all in a class, and am having trouble saving the modified form.
I have tried using the following, both produce errors
Recently I designed a form with several controls including both TextBox and Combox. Before I submit data by clicking the button, I use VBA to validate the values of those controls (textbox and combox). If the value is not valid, the system will eject a msgbox and automatically set the focus on that component. In order to tidy the code, I use a GoTo statement, which refers to a group of code to display the message due to the value of parameters
But it seems VBA doesn't recongize the control I set through the parameter.
The code as the following:
private function validation () as boolean
Dim ErrorMessage as string Dim ErrorComponent as String
...... ErrorMessage="Please select the shop Name" ErrorComponent="ShopName" // ShopNameis a combox
GoTo ExitFunction .....
...... ErrorMessage="Please set the start date" ErrorComponent="StartDate" // StartDate is a Textbox GoTo ExitFunction .....
As I tested for seveal time, I'm sure there is something wrong with " msgResult = MsgBox(ErrorMessage, vbOKOnly, "Error Message") Me(ErrorComponent).SetFocus "