![]() |
Saving A File
I am creating a template to be used to prompt for the following:
Enter RequestorName Enter RequestDate in mmddyy format Then have the file automatically save if possible,but use Save As since this is a template. So the file should appear like this within a folder: John Doe 041505 How would I code this? |
Saving A File
You can learn how to do this by first recording the macro and then looking
in help for INPUTBOX and then combining. post your macro back here for more assistance, if needed. -- Don Guillett SalesAid Software "CyndyG" wrote in message ... I am creating a template to be used to prompt for the following: Enter RequestorName Enter RequestDate in mmddyy format Then have the file automatically save if possible,but use Save As since this is a template. So the file should appear like this within a folder: John Doe 041505 How would I code this? |
Saving A File
If the requestor name is the same as the computer's user name and the data is
today's, you can do this without input boxes. Try: Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long Sub SaveAs() Dim UserName As String, FileName As String UserName = String(100, Chr$(0)) GetUserName UserName, 100 UserName = Left$(UserName, InStr(UserName, Chr$(0)) - 1) FileName = UserName & Format(Date, "mmddyy") & ".xls" ActiveWorkbook.SaveAs FileName:=FileName End Sub NOTE: the filename should not exist already (you could consider using the current time in the file name). "CyndyG" wrote: I am creating a template to be used to prompt for the following: Enter RequestorName Enter RequestDate in mmddyy format Then have the file automatically save if possible,but use Save As since this is a template. So the file should appear like this within a folder: John Doe 041505 How would I code this? |
Saving A File
There is an easier way to get the network user name:
Sub SaveAs() Dim UserName As String, FileName As String UserName = Environ("UserName") FileName = UserName & Format(Date, "mmddyy") & ".xls" ActiveWorkbook.SaveAs FileName:=FileName End Sub It does not require the API call and makes the code a little cleaner. I used to use the API but have abandoned it in favour of this... HTH "AA2e72E" wrote: If the requestor name is the same as the computer's user name and the data is today's, you can do this without input boxes. Try: Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long Sub SaveAs() Dim UserName As String, FileName As String UserName = String(100, Chr$(0)) GetUserName UserName, 100 UserName = Left$(UserName, InStr(UserName, Chr$(0)) - 1) FileName = UserName & Format(Date, "mmddyy") & ".xls" ActiveWorkbook.SaveAs FileName:=FileName End Sub NOTE: the filename should not exist already (you could consider using the current time in the file name). "CyndyG" wrote: I am creating a template to be used to prompt for the following: Enter RequestorName Enter RequestDate in mmddyy format Then have the file automatically save if possible,but use Save As since this is a template. So the file should appear like this within a folder: John Doe 041505 How would I code this? |
Saving A File
No how to create a macro. Guess I didn't do a very godd job of explaining
what I want. Thanks anyway. "Don Guillett" wrote: You can learn how to do this by first recording the macro and then looking in help for INPUTBOX and then combining. post your macro back here for more assistance, if needed. -- Don Guillett SalesAid Software "CyndyG" wrote in message ... I am creating a template to be used to prompt for the following: Enter RequestorName Enter RequestDate in mmddyy format Then have the file automatically save if possible,but use Save As since this is a template. So the file should appear like this within a folder: John Doe 041505 How would I code this? |
Saving A File
Fillenames will never be the same as the username that is logging in. THese
for people who are requesting some items to be sent to them. Need to keep track of what was sent to them . Thanks anyway. "AA2e72E" wrote: If the requestor name is the same as the computer's user name and the data is today's, you can do this without input boxes. Try: Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long Sub SaveAs() Dim UserName As String, FileName As String UserName = String(100, Chr$(0)) GetUserName UserName, 100 UserName = Left$(UserName, InStr(UserName, Chr$(0)) - 1) FileName = UserName & Format(Date, "mmddyy") & ".xls" ActiveWorkbook.SaveAs FileName:=FileName End Sub NOTE: the filename should not exist already (you could consider using the current time in the file name). "CyndyG" wrote: I am creating a template to be used to prompt for the following: Enter RequestorName Enter RequestDate in mmddyy format Then have the file automatically save if possible,but use Save As since this is a template. So the file should appear like this within a folder: John Doe 041505 How would I code this? |
Saving A File
THanks Jim,but it has nothing to do with the network username.
"Jim Thomlinson" wrote: There is an easier way to get the network user name: Sub SaveAs() Dim UserName As String, FileName As String UserName = Environ("UserName") FileName = UserName & Format(Date, "mmddyy") & ".xls" ActiveWorkbook.SaveAs FileName:=FileName End Sub It does not require the API call and makes the code a little cleaner. I used to use the API but have abandoned it in favour of this... HTH "AA2e72E" wrote: If the requestor name is the same as the computer's user name and the data is today's, you can do this without input boxes. Try: Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long Sub SaveAs() Dim UserName As String, FileName As String UserName = String(100, Chr$(0)) GetUserName UserName, 100 UserName = Left$(UserName, InStr(UserName, Chr$(0)) - 1) FileName = UserName & Format(Date, "mmddyy") & ".xls" ActiveWorkbook.SaveAs FileName:=FileName End Sub NOTE: the filename should not exist already (you could consider using the current time in the file name). "CyndyG" wrote: I am creating a template to be used to prompt for the following: Enter RequestorName Enter RequestDate in mmddyy format Then have the file automatically save if possible,but use Save As since this is a template. So the file should appear like this within a folder: John Doe 041505 How would I code this? |
All times are GMT +1. The time now is 07:08 AM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com