Cancel OR Loop Input On Worksheet Name
Jan 27, 2014
I am trying create a macro which asks for the Sheet name as an input for a Sub. I've gotten it to work but there is just one problem: The Cancel button does not work on the MsgBox. Everything else works just as I want to: it shows a dialog box to enter a name for the worksheet and if the worksheet does not exist, it loops and shows a message saying that it does not exist.
However, the cancel button does the same thing as entering nothing in the box and it does not end the process. I would want it so that the cancel button kills the process. Here is the code:
Code:
Option Explicit
Function WorksheetExists(WSName As String) As Boolean
On Error Resume Next
WorksheetExists = Worksheets(WSName).Name = WSName
On Error GoTo 0
[Code] .......
View 2 Replies
ADVERTISEMENT
May 22, 2014
By clicking the print-button the user may select the area to be printed.
But if I click the Cancel button, or the upper right X, the print message is sent to the printer, even it shouldn't.
How do I write the code for cancelling the print when clicking the cancel button?
Please see the VBA editor in the attached file.
A last question: is it necessary to declare the variable?
View 4 Replies
View Related
Jul 12, 2006
I have an inputbox in my code. By default the inputbox is giving the options "OK" and "Cancel". Is there a way where I can have only "OK" option in my inputbox.
View 3 Replies
View Related
Dec 9, 2011
I am using a For Each statement to loop through a range to look for the match to a predefined variable. I have that part successfully set up.
But - I was it to STOP looping once it finds the first match.
Can I do this with a For Each statement? If so, how? if not, how to loop until a match is found?
View 2 Replies
View Related
Aug 12, 2009
I would choose to select the delete button. I've created a new worksheet within a workbook, insert text and formatting, and copied to a specific place in the active worksheet. Everything works well except 1. there is a LOT of coding because I recorded the macro and 2. the delete message pops up for every files the macro manipulates. I have to click "delete" about 60 times throughout this macro and would love to be able to let it click its own delete button!
View 6 Replies
View Related
Jan 30, 2014
I have a macro that works perfectly to import a text file and parse it. Now i need it to do multiple ones. I import the txt file to a new workbook as i filter for certain data only and if found i copy that to the current workbook. I want to do the same just for many txt files:
[Code] .......
View 4 Replies
View Related
Apr 16, 2009
I have an input box that request the user to enter a vlue between 1 and 6, and uses the answer to multiply another range of cells.
Now I'm not sure how to add a couple of other features. I would like to:
1. Loop the input box until an acceptable answer is given, (numeric, between 1 and 6), with a message box prompt that says "Try Again".
2. Exit the macro if the user hits "Esc".
Here is my current
View 6 Replies
View Related
Jul 31, 2013
I have a code like this below
Sub Copydata()
Dim emre As Integer
For emre = 100 To 121
Sheets("CP TB").Select
ActiveSheet.Range("$B$8:$G$10000").AutoFilter Field:=3, Criteria1:=emre
Range("E8:F8").Select
[Code] .....
I want to skip values when the selection is a value I choose. I tried to put a "If" statement but I couldn't make it work.
The IF statement will check the selection after red colored code. if cell value is "a" then it will go for Next emre.
View 6 Replies
View Related
Jun 20, 2012
I have a range (C3:C56). I have a set number in each of these cells. I also have a range out to the side that calculates a number after input a % in cell BI2. The formula reads as "=AE3-(AE3*$BI$2)". Basically it is reducing the values in my range. If a number is in my range is 8 and i input 25% in cell BI2, then my result would be 6.
I have a few steps I want to happen with this range.
1 Display an input box asking for a percentage
2 I want to loop through my range and use that percentage to reduce the numbers
3 (optional but would be amazing to have) after the reduced value is determined, round down to the nearest multiple of 4.
View 9 Replies
View Related
Sep 4, 2009
I have several hundred workbooks with multiple worksheets(15-35) that I am trying to tidy up, so the data can be entered into a database. Its my first attempt at VBA and between the forum and macro recorder I made an attempt which is below. I just can't seem to get over the last part. I have searched the forum but can't seem to find any relevant information. I have a couple of questions.
1. I need to be able to run this macro over all the worksheets in the workbook, so how can I loop it? All the worksheets are named differently i.e. peoples names.
2. In my code I have inserted 4 columns. These columns will be the only thing common between all the worksheets. A1 to A30 = Week number, B1 to B30 = Shift Number, C1 to C30 = Supervisor number. Column D is blank. I'd like to be able to be prompted to enter these 3 numbers at the start if possible? Can this be done in such a way as you are only prompted the once and not on each worksheet? I picked 30 rows because the amount of rows in each worksheet varies but never exceeds this. The end of my code "Delete rows where cell B is blank" will delete any excess data where 30 rows of week numbers etc are not needed.
Sub CleanCost1_1()
'
' CleanCost1_1 Macro
' Macro recorded 04/09/2009
'
' Delete Job Card Sheet
Sheets("Job Card").Select
Application.DisplayAlerts = False
ActiveSheet.Delete
Application.DisplayAlerts = True
' Delete Master Sheet
View 9 Replies
View Related
Mar 22, 2009
I am basically creating a questionnaire style program where the user gets asked 50 questions, one by one and they input their answer and press another button (submit button). They initially press a start button to start the questionnaire.
So far, I have created a range of questions and it fills one row where the questions are entered. In intend to use a for loop to go though all 50 questions.
Now this is where I’m stuck. I have a submit button and after each question is displayed, I want the user to enter their answer and then click the submit button to then continue to the next question.
However, I can’t think of how to do this.
1.Firstly, how can I loop through the questions and yet allow the user to input their answers after each iteration?
2.Also can I even click the submit button during the loop phase? I.e. when already running.
View 3 Replies
View Related
Jul 10, 2014
Assuming I have three worksheets:
1) input: col A has a series of product code (string)
2) calculation: where I want to automatically copy and paste each product code from "input" worksheet into "calculation" cell B4, and through many steps of calculations, return the outputs in cell B8 and B9 (parameters are numeric)
3) output: how to automatically record B8 and B9 from "calculation" sheet to this sheet Row 5 and 6 from each loop? (format of output doesn't really matters)
View 4 Replies
View Related
Jan 7, 2010
The code below first asks a user to input a weekending date (which must be a Saturday). The value of the input box goes to cell C1 of my spreadsheet. That part works fine. I also have a function in Cell G1 with the function:
=TEXT(C1, "dddd")
I don't know if this is the best way to test for a Saturday but it is what I have,
Where is goes bad is if the date is not a Saturday. I have a loop to force a new date install via a input box but it won't update C1 with the inputed data to recheck for the Saturday value. Below is the whole code I am working with...
Dim aa As String
Dim bb As String
If Range("C1") = "" Then
Do While bb = ""
bb = InputBox("Please Enter a Weekending Date!")
Loop
Range("C1").Value = bb
End If
If Range("G1") "Saturday" Then
Do While aa "Saturday"
aa = InputBox("Weekending Must Be a Saturday. Please Enter a New Weekending Date")
Loop
Range("C1").Value = aa
End If
View 9 Replies
View Related
Feb 23, 2014
I am copying data from worksheet "Microsoft" to another workbook and paste in sheet1, i want the cell G1 to auto input the worksheet name "Microsoft" where i copy the data from,
How to have G1 show the worksheet name after i copy and paste the data from worksheet name "Microsoft".
View 6 Replies
View Related
Jan 31, 2014
I need to loop through worksheets in a workbook and copy every first cell value(A1) and then paste into a new worksheet.
I have tried various loops. some have copied first value for the first sheet and then pasted in the new sheet. while others have been not so good.
This is the code I have so far and this does not work at all.
Code:
Sub Check()
Dim ws As Worksheet
Dim lr As Long
Dim treg As Worksheet
[Code]......
View 1 Replies
View Related
Aug 31, 2008
I have created a form for my work. And I have input boxes for users to add data that I would like to get stored in another worksheet. What is the vba code to send data for an input box to another worksheet at the bottommost empty row; first column.
Private Sub cmdAddData_Click()
' Collect user name, find the space between first and last names, and separate the names.
UserName = InputBox("Enter the Program Name.", "Program Name")
spaceLoc = InStr(1, UserName, " ")
firstName = Left(UserName, spaceLoc - 1)
View 9 Replies
View Related
Feb 28, 2013
I'd like to extract a particular selection of text from an excel worksheet and paste this in an outlook draft. The problem is, there are multiple worksheets with different data and I'd like data from each worksheet to paste in a separate outlook draft. Therefore, I would have as many email drafts as there are worksheets.
The problem with the code below is, only the data from Sheet 1 is pasted onto multiple email drafts in outlook.
Code:
Sub send_range_as_table()'''''''''''''''''' tools -> refrence -> Microsoft outlook
Dim ws As Worksheet
Dim olApp As Outlook.Application
Dim olMail As MailItem
Dim mailbody As String
' used to insert a line ( press enter)
' create a table using html
[code].....
View 5 Replies
View Related
Mar 4, 2009
I am trying to work out how to stop input into a document if a certain response is selected from a form in excel 2007. Basically, i need some programming so if a question is answered a certain way - the user cannot continue completing the form as it becomes "locked" and an error box comes up saying this is the case - and what action needs to occur. As the list is a data validation list - i cant just separate it out - so that if one response is chosen over another then the error message appears.
For example the question might be "Will you use contractors". If the answer is Yes, the cell turns red and an auto response fills the cell (VBA has already been written into the document for this to occur). What i need additionally is an error box to come up saying "This audit cannot continue as a Minor Plan needs to be completed" and the rest of the questions responses say something to the same effect.
View 5 Replies
View Related
Oct 13, 2008
Situation: I have an Excel file with multiple worksheets. Each of these worksheets contain the same rules for data validation in a certain column (G).
Problem: If I want to add an item to the data validation lists I have to edit every single worksheet. I've tried making a seperate worksheet containing data validation items and using that as the source for the data validation rule, but Excel doesn't allow me to switch worksheets while defining the source.
In other words, I want to manage my data validation rules of multiple columns in multiple worksheets in one central location.
View 4 Replies
View Related
Nov 17, 2006
I created an array from data on one sheet...then when using the array (in a loop) on a different active sheet, half the values in the array are lost. However, if I run the code and keep the focus on the sheet with the array data, it works. I can't understand why.
I'll include my code.
aDepartments = Worksheets("sheet1"). Range("A5", Range("B5").End(xlDown).Address)
For Each iZ In aDepartments
MsgBox iZ
Next iZ
If i run this while sheet1 is the active sheet, it works fine - all 15 values (15 in each dimension) are there. If I click on any other sheet and then run the code, only 7 values are in the array (7 in each dimension).
View 4 Replies
View Related
Nov 22, 2006
I am OK to set values to the third row of "Loop Folder" from a column in " T" but I haven't figured out how to capture the remaining 22 columns of this worksheet.
Workbooks("Loop Folder.xls").Sheets("Sheet1"). Range("A3").FormulaR1C1 = Workbooks("B .xls").Sheets(" T").Range("C5").FormulaR1C1
Workbooks("Loop Folder.xls").Sheets("Sheet1").Range("B3").FormulaR1C1 = Workbooks("B .xls").Sheets(" T").Range("C6").FormulaR1C1
Workbooks("Loop Folder.xls").Sheets("Sheet1").Range("C3").FormulaR1C1 = Workbooks("B .xls").Sheets(" T").Range("C16").FormulaR1C1.............
View 3 Replies
View Related
Nov 16, 2008
am currently a QE using the following data for my report generation:
Date - Week - #Inspected - #Failed
Want to pull data into ANOTHER WORKSHEET from this one wherein the format will be :
Month - #Inspected - #Failed
Indirectly want Excel to directly convert the data by input and categorize into Month in another worksheet (will be linked and would be great if according to the date it could calculate the week as well)...so if somebody inputs defects by date it should automatically cumulate into respective month.
View 7 Replies
View Related
Mar 15, 2014
Creating a worksheet to consolidate his financial data. I've been able to muck my way through most of the VBA code by looking at examples on the forum. However, I cannot figure out how to add the last loop or where to place it. I can copy the values from the P&L sheet to the DATA sheet but I cannot discover a way to also pull the values from the BalSht sheet to the Data sheet. I think the BalSht loop will be almost identical to the "P&L sheet loop, and be placed just below it - but I'm not successful in multiple attempts and days of trying. How can I accomplish this?
Here's the VBA code:
VB:
Sub NewISCopy()
On Error Goto errorHandler
'*************************************************************
Dim CopyCol As String
Dim PasteCol As String
CopyCol = "G"
[Code]...
Excel file attached.
FI-LOOP-5.xlsm
View 7 Replies
View Related
Jun 25, 2014
I do have macro which populates sheets based on given list.
I want to paste all data in newly created sheets from "Template".
I do not want to loop 2 sheets ("DATA" & "Template").
Data must be pasted with format & validation. Validation exists on Template sheet only. No other sheet is referred for validation.
View 2 Replies
View Related
Mar 1, 2012
I am trying to do payslips. Basically I have one worksheet with about 7 columns. I have a 2nd worksheet that is like a template payslip.Worksheet 1 has hours worked and pay etc.
I want to find a method to loop through worksheet 1 and using worksheet 2 as a template create more worksheets and have the values come from worksheet 1 in the new worksheets.
View 2 Replies
View Related
Mar 23, 2014
This is the code I am using, I can not remember where I got it from.
Code:
Sub PDF()
' Saves marked sheets as PDF file.
Const PDF_path = "c:
eports"
Dim Snr As Integer
Dim Name As String
'Process all sheets in workbook
[code]....
This outputs all worksheets that have a specific value for A1, "Y".
My problem is it always prints exactly one too many, an extra copy. I think it may have to do with a broken loop?
View 1 Replies
View Related
Jul 8, 2009
I'm trying to loop thru the worksheets(which are imported from a web form in Outlook) and delete row 31 until the text "PARTS" is reached.
I need to do this to format each sheet exactly for export to an Access database. The code below works when I step thru it but when I save and run from a button it gets stuck in an endless loop. Any help would be greatly appreciated.
JB
Sub DeleteRow31()
Dim w As Worksheet
Dim rng As Range
For Each w In Worksheets
w.Select
Do Until Cells(31, "B") = "PARTS:"
Range("B31").Select
Range("B31:K31").UnMerge
Range("B31").Select
If Not Cells(31, "B") = "PARTS:" Then
Selection.EntireRow.Delete
End If
Loop
Next w
End Sub
View 9 Replies
View Related
Jun 22, 2006
I'm looking for a way to loop through the ActiveX controls (option buttons) in one sheet so that I can have these option buttons reflect what I select on the front sheet.
View 2 Replies
View Related
Feb 15, 2007
Finding the value "OK" in a range of data in Worksheet(1) out of Range("Product"). Ones the value "OK" is found, the entire row is cut and then pasted into a new worksheet 'Range("A3")'. Then the loop sets in and finds the next value "OK" in the range untill it reaches the end of the predetermined Range("Product").
The only problem I have is that the code I have written already performs the process, but when pasting the data into the new worksheet, paste's all of the found rows into the same row. So what you are left with in the new pasting sheet (Worksheet2), is only the last found row because it keeps overiding previously found data. What I need the Macro to do is find the next availible blank row in Worksheet2 and for all values cut out of Worksheet1. Now there was a simular posting to this on the forum, but when I tried it in my code it would not work...
Sub FindAndPaste1()
With Worksheets(1).Range("Product")
Set c = .Find("OK", LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
c.EntireRow.Cut Destination:=Worksheets("Sheet2").Range("A3")
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
End Sub
I also attach the Excel spreadsheet called Product Macro.xls
View 4 Replies
View Related
Mar 24, 2009
This is probably far easier then I am making it but I need to take the information that is in a textbox created through the control toolbox and copy and paste that information into a cell on different tab in the workbook. I have tried the infamous google and haven't been able to find much. The excel books that I have don't really touch on the control toolbox functions.
View 2 Replies
View Related