Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: Сохранение в Excel Добавлено: 04.11.03 21:13  

Автор вопроса:  Juli

Здравствуйте!

По шаблону создается файл. После окончания ввода необходимо сохранить его с нужным именем, т.е. в сохранить подставить имя файла.

Спасибо.

Ответить

  Ответы Всего ответов: 7  

Номер ответа: 1
Автор ответа:
 начинающий



Вопросов: 1
Ответов: 4
 Профиль | | #1 Добавлено: 06.11.03 13:59

А в чем проблема? ActiveWorkbook.SaveAs Filename:= NameOfFile,+ всякие параметры.

NameOfFile=переменная с именем файла.

Ответить

Номер ответа: 2
Автор ответа:
 Juli



Вопросов: 2
Ответов: 2
 Профиль | | #2 Добавлено: 14.11.03 01:04
Это-то понятно, а как дать пользователю при этом выбрать каталог куда его закинуть этот файл и еще сохранять таким образом надо только в первый раз когда файл только создан по щаблону.

Ответить

Номер ответа: 3
Автор ответа:
 bird



ICQ: 40490794 

Вопросов: 0
Ответов: 11
 Профиль | | #3 Добавлено: 15.11.03 12:36

Попробуй использовать вот эту функцию:

Declare Function SHGetPathFromIDList Lib "shell32.dll" _

Alias "SHGetPathFromIDListA" _

(ByVal pidl As Long, ByVal pszPath As String) As Long

Declare Function SHBrowseForFolder Lib "shell32.dll" _

Alias "SHBrowseForFolderA" _

(lpBrowseInfo As BROWSEINFO) As Long

Public Type BROWSEINFO

hOwner As Long

pidlRoot As Long

pszDisplayName As String

szTitle As String

ulFlags As Long

lpfn As Long

lParam As Long

iImage As Long

End Type

Function GetDirectory(Optional Msg) As String

Dim bInfo As BROWSEINFO, szPath As String

Dim l As Long, iPos As Integer

bInfo.pidlRoot = 0& ' Root folder = Desktop

If IsMissing(Msg) Then

bInfo.szTitle = "Select a folder."

Else

bInfo.szTitle = Msg

End If

bInfo.ulFlags = &H1 ' Type of directory

l = SHBrowseForFolder(bInfo)

szPath = Space$(512)

l = SHGetPathFromIDList(ByVal l, ByVal szPath)

If l Then

iPos = InStr(szPath, Chr$(0))

GetDirectory = Left(szPath, iPos - 1)

If Right$(GetDirectory, 1) <> "\" Then 'если \ уже есть, то ничего не менять

GetDirectory = GetDirectory & "\"

End If

Else

GetDirectory = ""

End If

End Function

в теле программы path_file= GetDirectory("Куда сохранять файл")

ну и NameOfFile формируешь как path_file & "bla-bla.xls"

Ответить

Номер ответа: 4
Автор ответа:
 CoHed



Вопросов: 2
Ответов: 3
 Профиль | | #4 Добавлено: 19.11.03 10:24

Использовать API конечно круто, но зачем.

Есть Application.GetSaveAsFilename

Sub SaveAs()

Dim WorkbookName As String

WorkbookName = Application.GetSaveAsFilename(, , , "Сохранить файл как ...")

If Len(WorkbookName) = 0 Or WorkbookName = "False" Then Exit Sub 'случай отмены

ActiveWorkbook.SaveAs WorkbookName

End Sub

Ответить

Номер ответа: 5
Автор ответа:
 Bad_Santa



ICQ: 329386293 

Вопросов: 1
Ответов: 3
 Профиль | | #5 Добавлено: 13.09.05 14:36
Привет всем!
Проблема:сохраняю экселевский файл на дискету и вынимаю ее. при открытии этого же файла с диска происходит зависание машины и флоппик начинает фырчать.Подсовываешь ему дискету хоть с этим сохраненным файлом, хоть любую другую-все приходит в норму...что делать??? (рабочий каталог и каталог автосохранения указан на диск, а не на дискету). спасайте!!

Ответить

Номер ответа: 6
Автор ответа:
 bird



ICQ: 40490794 

Вопросов: 0
Ответов: 11
 Профиль | | #6 Добавлено: 13.09.05 16:10
Странно, сколько работаю с Екселем тагого эффекта никогда не наблюдал. Если следовать логике, то попробуй этот файл пересохронить на диске :)

Ответить

Номер ответа: 7
Автор ответа:
 Bad_Santa



ICQ: 329386293 

Вопросов: 1
Ответов: 3
 Профиль | | #7 Добавлено: 13.09.05 16:13
такое происходит с каждым файлом,который пишешь на дискету

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам