PC Review


Reply
Thread Tools Rate Thread

Creating Path and FileName

 
 
Steve
Guest
Posts: n/a
 
      4th Jun 2009
Hello,
I am tryin to create a filename and path using Input boxes....

Sub MySub()
Dim UserInput1 as string
Dim UserInput2 as string

UserInput1=inputbox("Enter Data")
UserInput2=inputbox("Enter Some Moredata"

activeWorkBook.SaveAs Filename:="C:\Mypath"&UserInput1&"\UserInput1 _
&"-"UserInput2&".xlsm",FileFormat:=xlOpenXMLWorkbookMacroEnabled,
CreateBackup:=False

But Im getting "expected End of Statement" on the "\"

What am I doing wrong?

Thanks




 
Reply With Quote
 
 
 
 
Gary''s Student
Guest
Posts: n/a
 
      4th Jun 2009
Enclose & with spaces:

Sub MySub()
Dim UserInput1 As String
Dim UserInput2 As String

UserInput1 = InputBox("Enter Data")
UserInput2 = InputBox("Enter Some Moredata")

ActiveWorkbook.SaveAs Filename:="C:\Mypath" & UserInput1 & "\UserInput1" _
& "-" & UserInput2 & ".xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled,
CreateBackup:=False
End Sub

--
Gary''s Student - gsnu200856


"Steve" wrote:

> Hello,
> I am tryin to create a filename and path using Input boxes....
>
> Sub MySub()
> Dim UserInput1 as string
> Dim UserInput2 as string
>
> UserInput1=inputbox("Enter Data")
> UserInput2=inputbox("Enter Some Moredata"
>
> activeWorkBook.SaveAs Filename:="C:\Mypath"&UserInput1&"\UserInput1 _
> &"-"UserInput2&".xlsm",FileFormat:=xlOpenXMLWorkbookMacroEnabled,
> CreateBackup:=False
>
> But Im getting "expected End of Statement" on the "\"
>
> What am I doing wrong?
>
> Thanks
>
>
>
>
>

 
Reply With Quote
 
Rick Rothstein
Guest
Posts: n/a
 
      4th Jun 2009
As Gary''s Student said, you need spaces around the ampersands
(specifically, in front of those that follow a variable name). Why? It has
to do with VB's backward compatibility with the BASIC languages it was
derived from. In the "old days" (although there are some that still do
this), you were able to declare your variables with a postfix symbol to
indicate the data type. The ampersand symbol was used to declare a variable
as Long. So, you did this to establish a Long variable...

Dim MyVariable&

The worse thing about using the postfix symbol is that you were able to
force the declaration at the time of first use without providing a Dim
statement beforehand. So, if you did this...

X = 10 * MyVariable&

in code without first Dim'ming the variable as a Long, VB would
automatically Dim it as a Long for you the first time it came across the &
attached to the variable name. Even worse, in the old, old days of BASIC
(those prior to VB), you could actually have the same name (names were
limited to 2 characters back then) with different postfix symbols. So you
could have (again, back in the old, old days) AB%, AB!, AB$ (and I don't
remember the other available symbols any more) in one program and they would
all be different. To account for this behavior, BASIC had to allow the
postfix symbol to be used whenever the variable was used. The early VB's,
trying to maintain backward code compatibility (as much as the switch from
procedural BASIC to event driven VB would allow that is), continued to allow
the postfix symbol to be used whenever the variable was used (although, as I
vaguely remember, the ability to have the same name used with different data
types was eliminated when the "As <VarType>" declaration were created).
Anyway, the reason you need the space after the variable name, and before
the ampersand, is because VB isn't able to decide if you are applying a Long
postfix symbol to the variable name or simply trying to concatenate it.

--
Rick (MVP - Excel)


"Gary''s Student" <(E-Mail Removed)> wrote in message
news:CF6605B1-927B-4938-A8FA-(E-Mail Removed)...
> Enclose & with spaces:
>
> Sub MySub()
> Dim UserInput1 As String
> Dim UserInput2 As String
>
> UserInput1 = InputBox("Enter Data")
> UserInput2 = InputBox("Enter Some Moredata")
>
> ActiveWorkbook.SaveAs Filename:="C:\Mypath" & UserInput1 & "\UserInput1" _
> & "-" & UserInput2 & ".xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled,
> CreateBackup:=False
> End Sub
>
> --
> Gary''s Student - gsnu200856
>
>
> "Steve" wrote:
>
>> Hello,
>> I am tryin to create a filename and path using Input boxes....
>>
>> Sub MySub()
>> Dim UserInput1 as string
>> Dim UserInput2 as string
>>
>> UserInput1=inputbox("Enter Data")
>> UserInput2=inputbox("Enter Some Moredata"
>>
>> activeWorkBook.SaveAs Filename:="C:\Mypath"&UserInput1&"\UserInput1 _
>> &"-"UserInput2&".xlsm",FileFormat:=xlOpenXMLWorkbookMacroEnabled,
>> CreateBackup:=False
>>
>> But Im getting "expected End of Statement" on the "\"
>>
>> What am I doing wrong?
>>
>> Thanks
>>
>>
>>
>>
>>


 
Reply With Quote
 
 
 
Reply

Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Extract path from path & filename Paul Microsoft VB .NET 5 4th Nov 2005 05:16 AM
Getting just filename from FileDialog.FileName without path =?Utf-8?B?QW5kcmVzIFJvbWVybw==?= Microsoft C# .NET 1 13th Jul 2005 06:29 PM
Default File Path in Workbooks.Open(FileName:="Filename") =?Utf-8?B?RGVubmlz?= Microsoft Excel Misc 1 18th Oct 2004 04:53 PM
How to derive the path of a filename without the filename Shadowboxer Microsoft VB .NET 12 20th Sep 2003 04:50 PM


Features
 

Advertising
 

Newsgroups
 


All times are GMT +1. The time now is 01:24 AM.