Watch Window Does Not Display All Collection Items
Jun 20, 2008
I have a collection with several thousand items. I added the collection to the Watch Window in the VBE editor, but the Watch Window only displays the first 256 items in the collection. Is it possible to view all items of a collection in the Watch Window?
I'm debugging a file that keeps crashing. Every time it crashes I have to reenter about 6 different watches in my VBE Watch Window. Is there any way to have my Workbook_Open() create the watches?
I have a UserForm function which accepts as a string the name of a TextBox control on the form. The function returns a reference to the named TextBox control (or Nothing if the control does not exist). I have the function header defined this way:
Public Function TextBox(byval strName as String) as TextBox
The function returns a reference to the TextBox control like this:
set TextBox = Me.Controls.Item(strName)
(I know, the .Item is not required.)
The code which calls the above function first declares a TextBox object with this Dim statement:
Dim txtTextBox as TextBox
The routine then goes on to call the TextBox function like this:
set txtTextBox = TextBox(strTextBoxName)
When run, the above statement genrates a Type Mismatch error. I'm confused, because if I 'TypeName()' the TextBox function's returned value, it's "TextBox,".
I thought I could work around this problem by changing the TextBox function's return value's data type to Variant, but that produced the same result.
The only "solution" I've come up with is changing the TextBox function's return value's type (and any reference to the functions' return value) to Control.
I expected that the Controls object would behave similar to a Collection object in that it's items can be different types (TextBox, Label, CommandButton, ListBox, etc.) and no Type Mistmatch erros occur so long as the type of the item returned matches the type of the variable referencing that item. But is seems that Controls requires that any reference to one of its items must be type Control, not the actual type of the item returned.
I'd prefer not to use Control data rypes in my applcation, as that would require additional code in all of my subs and functions to ensure that any Control object passed to it is the correct type of control (TextBox, Label, etc.).
Can anyone explain what's going on here? Why shouldn't I be able to assign a TextBox type variable to Controls.Item("xyz"), so long as the item returned by Controls.Item("xyz") is type TextBox?
I'm trying to get the below code to save the workbook before the macro continues. I would like for the Save As browser window to be displayed so that the user can select a location to save in.
It would be great if it could maintains the existing name and file type.
The code I attempted below will save the file I just don't know where to!!
Code:
Sub Clear_Quarter_Call() 'Activates password message box If UCase(InputBox("Enter Password 'This Action Cannot Be Undone' ")) "2222" Then Exit Sub
I know how to use Application.DisplayFullScreen = True to enlarge the screen upon openning the excel file. But, when you minimize the screen and then maximize it again, the full screen goes back to normal. How do you force the screen to stay Full Screen?
I need to be able to display a list of values from a drop down window. When the value in the drop down window is selected I need to have the data populated in the rows to the right of the drop down window. I have created the Drop Down using data validation in B12, I need C12 & D12 to auto fill with the info listed in H2 & I1 according to the item picked in the drop down.
I have tried to follow an example listed on the website but i keep getting a formula error.
I have the next code and i`m using For Each-Next loop technique. Somewhere i read that "For Each-Next" is slower than "For-To-Next" loop. I have to put items from a collection in specific cells location fill a matrix or fill an array. Question:
1)Is possible to do the same job without use "For Each-Next" loop? 2)How can i extract items from collection like they were a matrix elements? 3)Can i extract, for example, the 4th, 5th or 11th element of one collection if i want?
Can we use excel as a stop watch, with pause and continue menu? We are going to have a mini basketball tournament and I was assigned to be a timer. I want to impress my friend by using excel as a timer.
I am confronting a problem with a ListBox that displays Item by the selection of a ComboBox in the same Userform.
All works like this in the column “A” from my data sheet I have a list of names and in the column J I have a list of years.
What my UserForm1 dose is to select the year column with the ComboBox and display in the ListBox the corresponding name from this year selection. Until there all work fine.
Now I have to display in the TextBoxes form the Userform2 all data form my (data sheet) and this dose not work properly.
What happens is that when I select and Item in my listBox.Userform1, Usrform2 kind of display Items from another person.
I will also attach an example on this thread for a better view of my problem.
I'm trying to write a macro that will watch to see if there is change in a range of cells, and if the values of the cells change to preform a given action. I need to do it this way because I can't put a formula in some cells.
I have a list of account numbers with stock attached to each account. I want to show all account numbers that do not have any one of 5 items attached to it. See my attached (simplified) example, show all accounts that dont have Bananas or Oranges, account number 222 and 444 would be displayed.
I have a long column of 9-digit numbers which represent the swipe-card-ID's of patrons accessing a parking facility. Most of them occur more than once, some of them many times. There is an operational rule that bars them from using the facility more than x times. (I can't implement this limitation in the parking software/hardware, or I would happily do so.)
So my question is, is there a way to process through that column, identifying each unique ID, and reporting any that occur more than x times?
Can you display items from 1 column on a worksheet in 2 columns on a Listbox?
This is to avoid having a Listbox that is too long for the form, (I know I can use a scrollbar and I am but I would still like it shorter if possible).
I have seen many threads about the stop watch but have problem to figure out which one will be best for me. I would like to create the stopwatch in excel where I can time single athlete (unlimited number) and check their splits/laps as well to get their total time. I would like to be able to take as many splits I want it. I need this to work in seconds.
I'm in the process of writing/editing a macro, but after I run the macro once, the Expressions in the Locals Watch window disappear, and if I try to run it again it produces an "Excel has encountered an error and needs to close". The macro probably doesn't make much sense out-of-context, but perhaps there's a glaring error that's causing this. A guess - possibly related to the Error Handling in the vba? (1st time I've used this in a macro).
Option Explicit Sub Compare() Dim strNaspK As String Dim strCtryK As String Dim intCtryRev As Integer Do Until ActiveCell. Offset(1, 0) = "" ActiveCell.Offset(1, 0).Select strNaspK = ActiveCell strCtryK = ActiveCell.Offset(0, 2) On Error Goto ErrJump:........................
Basically, I've got two sets of data on different sheets, with NASP ID and country being variables. Just trying to import the data from the 'Comparison' sheet, if both the NASP id and country matches that on the first sheet, established by the variables.
I am trying to work on Sheet 2(Details per person). I want to be able to display all items in a row that matches the 2 criteria (Skype ID and Date) and the items are based from Master Raw file which is in another sheet. I would like to just use index and match.
When I started using VBA, all the code for each module was shown in the code window. This was a bit cumbersome when looking for one sub in particular. Now when I load VBA, all the Subs and Functions have their own page, and can be selected from the right hand drop down list. This is much easier for entering code, and finding subs. However, it is sometimes useful to see 'the big picture', so how do I swap between the two types of display?
How can I FILTER a range and display the unique items, one below the other, WITHOUT blank cells - with only a FORMULA. What I came up with is shown in the attached WB. I would like to present the countries like in C11:C15.
It's a quarterly schedule for utility meter readers, divided up into days across the top, and routes/areas down the side. There's a space with each route for the employee ID to go, depending on who's doing it.
Down the bottom of the sheet, there's a few empty lines for all the available employees who haven't been allocated to a route.
On the second sheet labelled EMP LIST, is all the employee IDs. It's also got the areas they work- it's for something I want to implement later.
I can put all the employees into a single column list, then use basic DV to give a dropdown menu by each route, to assign an employee to it. This is pretty straight forward. I've also been playing with this in combination with a countif, so that employees already assigned do not appear in the list.
This is about as far as I've managed to get with it.
I need to get the employees who aren't assigned to anything to appear in a list below the routes. I'm fairly sure this is just another countif, but I'm not 100% on the exact formulas.
I also need the list in the dropdown menu to reset for each day of the quarter, i.e. if I assign an employee to a route on the 30th day of the quarter, their ID will disappear from the list for any other route for that day, but will still be there for the other days of the quarter.
So far the only way I've managed to do this is by duplicating the employee list for every day of the quarter, which is going to get very cluttered, and also makes staffing changes difficult. I'm hoping there's an easier way to do this using one data set.
I've added an example of the sheet. It's one week and it's only got about 1/3 of the routes we would actually have on any given day.
When inserting "1" in the cell under soup, i was thinking it will bring up a list of its ingredients and how much of that ingredient. The values are listed in the same spread sheet below.
The amount of the ingredient is in D50 (80grams) and the item type next to it in E50(onion)
Is it possible to put in "1" soup then it displays all the items in both those cells range example(D50-E50 to D60-E60)? Is it possible to put the value "2" in soup and it shows double the measurements? example (160grams) (onion)
Where H1 contains the word Assigned. I need to also find and add to count for matches in I1,J1 and K1 which contain New, Pending and Work in Progress respectively.
I am using the following code to determine whether a given range is the linked cell for a Combo Box by looping through the shapes collection.
Function LocateFormControl(OverRange As Range) As Shape Dim objTemp As Shape For Each objTemp In OverRange.Parent.Shapes If Left(objTemp.name, 6) = "Drop D" Then If WorksheetFunction.Substitute(objTemp.ControlFormat.linkedcell, "$", "") = WorksheetFunction.Substitute(OverRange.Address, "$", "") Then Set LocateFormControl = objTemp Exit Function End If End If Next Set LocateFormControl = Nothing End Function
However, when I use this code on big worksheets with many other shape objects (such as Comments), the program runs very slowly. Is there a ComboBoxes Collection that I could use to avoid looping through all shapes on the worksheet, or is there a different, faster way to run this code?
I am wanting to create a list where I can select multiple items within that list and then print only those selected items. I have created something similar thru data validation, but I can't get it to print.
In addition, I would like to be able to subdivide the list into multiple categories, then select items from these multiple categories and print them.
I have a piece of code I am using to important data from a text file. The code works fine but I am having a hard time understanding how defining a Variable "As New Collection" works. I have tried to research on numerous websites dedicated to excel but had no luck finding any further information.
I have executed the code line-by-line over-and-over and believe what the "new collection" does is it creates some type of external database that is hidden within excel (that's just my guess). I have attached a sample file and a text file with dummy data if needed to see how the code is working.