I have 2 columns of data in an excel sheet and I wish to add this to a userform so that the userform displays the 2 columns beside each other with headings, like a table. The user should then be able to select a particular row and insert it into the specified cell.
I would also like the user to select a row on the table and then be able to bring up another table depending on the row selected...basically so that the user can draw deeper into the information that they require.
Is there any way for me to put a date in the userform? I created 3 combo boxes (day, month year). I would want it to appear as one date in one single cell in the another sheet as the date the entry was updated in the userform.
I'm trying to set up a relatively simple UserForm, which will collect the name of a project from a ListBox, a project update which will simply be text entered into a TextBox, and a estimated completion percentage (factor of 10, 10/20/30% and so on) which will come from another ListBox.
I've managed to get many of the basics working, for example an OK button and a CANCEL button, but there are a few bits that I'm still finding rather tricky.
I have the selected date in the percentage listbox going back into my chosen place in the spreadsheet quite happily, but I can't get it to work for the project name listbox (I think it's because the options come from rowsource and weren't entered manually like the other one). I'll paste my code at the end so you can all see how I've done it (and have a laugh)!
I have also just about managed to get the data to go to the right place in the spreadsheet. I want the data to appear in columns, column 1 for the project name, project update in 2 and percentage complete in 3. I have this working, but it for any reason one cell becomes blank, my code uses that cell, and that could cause entries to become mixed up. I want the UserForm to enter data on the first entirely empty row.
Here's my code:
VB: Private Sub Cancel_Click() Unload ProjectUpdate End Sub
Private Sub Clear_Click() Call UserForm_Initialize End Sub
In reference to my other topci here: Userform Error
In this workbook I have successfully made it act like a userform calculator, the user does not ever see the actual sheets in the workbook, their only interface is the Userform calculator I created.
This is exactly how I want it, they do not need to see the sheets, nor do I want them to.
This leads me only to my next problem... Some of the users obviously wont have Macros automatically enabled, what I am wondering is, is there a way to put the normal "Enable Macros" button which appears along the top of a macro containing workbook when opened, I want to put this button into a userform like display without showing the workbook at all.
So here the process I envision:
1. User double clicks the file 2. It opens and automatically goes invisable (like it does already) 3. If the user does not have macro enabled, a userform like box appears and says "Please enable Marcros to user" with a button below for "Enable" and "Exit" 4. If exit is pressed excel closes 5. If enabled is pressed Macros are enabled and then they will automatically see my calculator userform like normal.
As you see, at no point do I want them to see excel or a workbook, just userforms so its not like they are using excel at all.
I have searched around the net and found a few ideas to tackle this, mainly one that has a "Prompt" workbook that shows when macros are disabled, but that is not ideal for me. However perhaps I could just edit this "prompt" code thing for my situation?
Here is the prompt sheet code I talked about:
Code: Option Explicit Private Sub Workbook_Open() With Application
[Code]....
How to use:
Open an Excel workbook Select Tools/Macro/Visual Basic Editor in the VBE window, select View/Project ExplorerSelect the This Workbook module Copy and paste the code above into this ModuleNow select File/Close and Return To Microsoft Excel Don't forget to save your changes...
I am having trouble being able to put data into a table. The data I have breaks down orders of products in crates into lots of 45 crates with a remainder.
I would like to be able to fill a table from left to right which displays the item number with the corresponding amount of crates, which seamlessly goes from one item to the next.
Would like to sum a table without putting individual answers on each row and summing column. The table can consists of 100's of rows but only 3 columns.
I've got exactly the same, but the only difference is that I have my userform in a Word document. My userform has a combobox, and textboxes that should return the values from Excel table depending on the user's selection in the combobox. I tried to copy the code to my word document, and the problem appears with rng.Find and cl.Offset, and it seems to me that it is because Word treats these variables as word ranges, but not excel ranges. But how should I make this difference when declaring my variables as Range?
Does anyone knows a simple way to insert a table on a MultiPage UserForm ?
This MultiPage appears on a excel spreadsheet when the user click on a button. I would like to put a table on one of the pages such that the user can fill in this table.
I have a UserForm from which you are required to select all options. Then the user is supposed to click "Add To List" and the selected items must appear in the TextBox in a Row format.
1) In order to accomplish this i create a Sheet in Excel from which i will store all the Added Items to the list. From there i will send the results to the TextBox.
2) The user must be able to select a Result from a row in the TextBox so he can delete it.
3) The user cannot select the first row as it is the header.
I have to this code in the "Add To List" button SUB.
I have a userform to be populated with data from a dynamic table for purposes of showing users their daily stats. The data is populated on the worksheet in the following way- ..............
When the userform is pulled up, it needs to show the following details -
UserName - User1 Workitem 2 : 12 Workitem 3 : 7
As the work items go all the way to 65, I wanted to only show the work items that had actually been worked on by each person - What I am struggling with is how to populate the textboxes on the userform with this data - without getting into an absolute mess of if statements -
If Range(WorkItem1Range).Value <> "" Then userformStats.WorkItemA= Range("a2").Value..........
No matter what I do the data entered into the UserForm always goes to the next row that isnt formatted as a table instead of into the the next empty row within the table.
I have tried:
Code:
With Sheet2.Range("B1").EntireColumn NextRow = .Find(What:="*", _ After:=.Cells(1), _ LookIn:=xlFormulas, _ Lookat:=xlPart, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Row + 1 End With
and
Code:
Private Sub CommandButton1_Click() Dim LastRow As Long Dim i As Integer, response As Integer With Sheet1 LastRow = .Cells(.Rows.Count, "B").End(xlUp).Row + 1
[Code] .......
and
Code: Dim LastRow as LongLastRow = Cells.Find("*",SearchOrder:=xlByRows,SearchDirection:=xlPrevious).Row
and
Code:
Private Sub CommandButton1_Click() Dim LastRow As Object Set LastRow = Sheet1.Range("a65536").End(xlUp)
I have a spreadsheet that summarizes variations on a project. On the "Variations" tab a userform pops up that asks the user to select from 3 options:
1. Create new variation This launches another userform that allows the user to enter the necessary information and create a variation sheet. This userform updates "VarSummary" and also creates a new sheet for each variation created. I have been able to do all of this so far. The summary sheet "Variations" tab uses the data on the "VarSummary" tab. This is the code I used to add variation
Private Sub cmdadd_Click() Dim iRow As Long Dim ws As Worksheet Set ws = Worksheets("VarSummary") With ws iRow = . Cells(.Rows.Count, 2).End(xlUp).Offset(1, 0).Row 'Copy the data to the database .Cells(iRow, 1).Value = Me.txtVarRecNo.Value .Cells(iRow, 2).Value = Me.txtDate.Value .Cells(iRow, 3).Value = Me.txtChg.Value .Cells(iRow, 4).Value = Me.txtSrcRef.Value .Cells(iRow, 5).Value = Me.cbstatus.Value .Cells(iRow, 6).Value = Me.DirQty.Value .Cells(iRow, 7).Value = Me.DirVal.Value............................
I need to make a userform that will add data to table placed (for example G12:H12), and if G13:H13 cells are written to next cells below (G14:H14). I would also want to receive auto email noticiation (or notofications by pressing another command_button) that someone add data with copied content of (G13:H13...G14:H14....) cells in email body.
I want to know that are there anyway I can quickly declare the header row of the sheet into a string instead go through each one of them using dim xxxxx AS String?
Attached is a small sample, how to put the text from A1 to combobox1, the text from A2 to combobox2 and so on
Up to combobox6, when the form loads. but be able to change the text A1 thru A6, and no matter what text I put in A1 thru A6 the form loads with whatever text is there, is that possible?
I tried to put the following formula into a cell using vba, but I received alot of errors. here is the formula I am trying to put into a certain cell and I will use a variable to replace the row number in the formula
The code below places a spinbutton on the worksheet. The linked cell = F10 This works ok. The orientation is vertical and max is 100 However I would like to set the orientation to horizontal and the max value to 1500. Which commands must be added for this in the macro below? I work with Excel2000.
I would like to write a macro that would start by asking me something along the lines of, "Enter student # you want to print a report about." The # I enter would need to be stored as a variable in the VB code, and then my code would need to use the variable to do some search and replace operations. (Replace all instances of 10 (the default student number) with the variable I have specified).
I don't really know how to even start going about this. How do I get Excel to ask me for a variable, and then use that variable in code?
I would like to check whether 2 conditions are satisfy in an if statement. One condition is of data type text and it is stored in a variable calls search1 whereas the other condition is of data type date and i intend to store into a variable calls search2. Could someone tell how to put search 2 into the below code. Basically, i want it to be like
if Cell A is equal to search1 and CellB is equal to search2 then
return value that is associated with the search in cell c
How can I stop #DIV/0! in a cell which has a formula relating to a cell which will have a number inputted but at the moment is empty, without me putting a '0' in?
When I try to run the macro, an error comes up saying application-defined or object-defined error. The following code is the line in which I receive the error.
VB : tool.Worksheets("ALL").Cells(row1, "J").Formula = "='[TRB Database.xlsm]TRB Database'!$I$" & A