Создание папки, в ней еще одной папки
danilka51
Дата: Вторник, 28.05.2013, 13:56 |
Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 54
Репутация:
5
±
Замечаний:
0% ±
Возникла ситуация, что из определенного листа нужно создать папку и если она существует, то в ней еще одну папку, а в ней уже файл.
Возникла ситуация, что из определенного листа нужно создать папку и если она существует, то в ней еще одну папку, а в ней уже файл. danilka51
Ответить
Сообщение Возникла ситуация, что из определенного листа нужно создать папку и если она существует, то в ней еще одну папку, а в ней уже файл. Автор - danilka51 Дата добавления - 28.05.2013 в 13:56
danilka51
Дата: Вторник, 28.05.2013, 16:17 |
Сообщение № 2
Группа: Пользователи
Ранг: Участник
Сообщений: 54
Репутация:
5
±
Замечаний:
0% ±
[vba]Код
Dim s s = ThisWorkbook.Path & TextBox1 MkDir s
[/vba] Что тут исправить?
[vba]Код
Dim s s = ThisWorkbook.Path & TextBox1 MkDir s
[/vba] Что тут исправить? danilka51
Ответить
Сообщение [vba]Код
Dim s s = ThisWorkbook.Path & TextBox1 MkDir s
[/vba] Что тут исправить? Автор - danilka51 Дата добавления - 28.05.2013 в 16:17
nilem
Дата: Вторник, 28.05.2013, 18:51 |
Сообщение № 3
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация:
563
±
Замечаний:
0% ±
Excel 2013, 2016
Цитата (danilka51 )
Что тут исправить?
наверное, так [vba]Код
s = ThisWorkbook.Path & "\" & TextBox1
[/vba]
Цитата (danilka51 )
Что тут исправить?
наверное, так [vba]Код
s = ThisWorkbook.Path & "\" & TextBox1
[/vba]nilem
Яндекс.Деньги 4100159601573
Ответить
Сообщение Цитата (danilka51 )
Что тут исправить?
наверное, так [vba]Код
s = ThisWorkbook.Path & "\" & TextBox1
[/vba]Автор - nilem Дата добавления - 28.05.2013 в 18:51
danilka51
Дата: Вторник, 28.05.2013, 22:45 |
Сообщение № 4
Группа: Пользователи
Ранг: Участник
Сообщений: 54
Репутация:
5
±
Замечаний:
0% ±
С этим понятно, а как создать в созданной папке папку, а книгу как создать? Пока ни чего подходящего не нашел (((((
С этим понятно, а как создать в созданной папке папку, а книгу как создать? Пока ни чего подходящего не нашел ((((( danilka51
Ответить
Сообщение С этим понятно, а как создать в созданной папке папку, а книгу как создать? Пока ни чего подходящего не нашел ((((( Автор - danilka51 Дата добавления - 28.05.2013 в 22:45
Саня
Дата: Среда, 29.05.2013, 01:28 |
Сообщение № 5
Группа: Друзья
Ранг: Ветеран
Сообщений: 1068
Репутация:
560
±
Замечаний:
0% ±
XL 2016
Цитата (danilka51 )
... из определенного листа нужно создать папку ...
берешь лист, сгибаешь его пополам, края склеиваешь,.... а если по делу, то: [vba]Код
MkDir "C:\Fold1\" MkDir "C:\Fold1\Fold2\" MkDir "C:\Fold1\Fold2\Fold3\" ' намек понял?
[/vba] ну а если по взрослому, то так: [vba]Код
Private Declare Function SHCreateDirectoryEx Lib "shell32" Alias "SHCreateDirectoryExA" ( _ ByVal Hwnd As Long, _ ByVal pszPath As String, _ ByVal psa As Any) As Long Private Const ERROR_SUCCESS = 0& ' The operation completed successfully Private Const ERROR_BAD_PATHNAME = 161& '* The specified path is invalid Private Const ERROR_FILENAME_EXCED_RANGE = 206& ' The filename or extension is too long Private Const ERROR_PATH_NOT_FOUND = 3& ' The system cannot find the path specified Private Const ERROR_FILE_EXISTS = 80& ' The file exists Private Const ERROR_ALREADY_EXISTS = 183& '* Cannot create a file when that file already exists Private Const ERROR_INVALID_NAME = 123& '* The filename, directory name, or volume label syntax is incorrect Private Const ERROR_CANCELLED = 1223& ' The operation was canceled by the user Function lWinAPI_MkDir(sPath As String) As Long lWinAPI_MkDir = SHCreateDirectoryEx(0&, sPath, ByVal 0&) End Function ' а книгу как создать? ' например Sub MkSheetWB() Dim sPath As String sPath = "C:\Fold1\Fold2\Fold3\" ' создаем папку lWinAPI_MkDir sPath ' одной строкой! Dim sName As String sName = ActiveSheet.Name sPath = sPath & sName & ".xls" ActiveSheet.Copy ActiveWorkbook.SaveAs Filename:=sPath, FileFormat:=xlExcel8 ActiveWorkbook.Close End Sub
[/vba]
Цитата (danilka51 )
... из определенного листа нужно создать папку ...
берешь лист, сгибаешь его пополам, края склеиваешь,.... а если по делу, то: [vba]Код
MkDir "C:\Fold1\" MkDir "C:\Fold1\Fold2\" MkDir "C:\Fold1\Fold2\Fold3\" ' намек понял?
[/vba] ну а если по взрослому, то так: [vba]Код
Private Declare Function SHCreateDirectoryEx Lib "shell32" Alias "SHCreateDirectoryExA" ( _ ByVal Hwnd As Long, _ ByVal pszPath As String, _ ByVal psa As Any) As Long Private Const ERROR_SUCCESS = 0& ' The operation completed successfully Private Const ERROR_BAD_PATHNAME = 161& '* The specified path is invalid Private Const ERROR_FILENAME_EXCED_RANGE = 206& ' The filename or extension is too long Private Const ERROR_PATH_NOT_FOUND = 3& ' The system cannot find the path specified Private Const ERROR_FILE_EXISTS = 80& ' The file exists Private Const ERROR_ALREADY_EXISTS = 183& '* Cannot create a file when that file already exists Private Const ERROR_INVALID_NAME = 123& '* The filename, directory name, or volume label syntax is incorrect Private Const ERROR_CANCELLED = 1223& ' The operation was canceled by the user Function lWinAPI_MkDir(sPath As String) As Long lWinAPI_MkDir = SHCreateDirectoryEx(0&, sPath, ByVal 0&) End Function ' а книгу как создать? ' например Sub MkSheetWB() Dim sPath As String sPath = "C:\Fold1\Fold2\Fold3\" ' создаем папку lWinAPI_MkDir sPath ' одной строкой! Dim sName As String sName = ActiveSheet.Name sPath = sPath & sName & ".xls" ActiveSheet.Copy ActiveWorkbook.SaveAs Filename:=sPath, FileFormat:=xlExcel8 ActiveWorkbook.Close End Sub
[/vba]Саня
Ответить
Сообщение Цитата (danilka51 )
... из определенного листа нужно создать папку ...
берешь лист, сгибаешь его пополам, края склеиваешь,.... а если по делу, то: [vba]Код
MkDir "C:\Fold1\" MkDir "C:\Fold1\Fold2\" MkDir "C:\Fold1\Fold2\Fold3\" ' намек понял?
[/vba] ну а если по взрослому, то так: [vba]Код
Private Declare Function SHCreateDirectoryEx Lib "shell32" Alias "SHCreateDirectoryExA" ( _ ByVal Hwnd As Long, _ ByVal pszPath As String, _ ByVal psa As Any) As Long Private Const ERROR_SUCCESS = 0& ' The operation completed successfully Private Const ERROR_BAD_PATHNAME = 161& '* The specified path is invalid Private Const ERROR_FILENAME_EXCED_RANGE = 206& ' The filename or extension is too long Private Const ERROR_PATH_NOT_FOUND = 3& ' The system cannot find the path specified Private Const ERROR_FILE_EXISTS = 80& ' The file exists Private Const ERROR_ALREADY_EXISTS = 183& '* Cannot create a file when that file already exists Private Const ERROR_INVALID_NAME = 123& '* The filename, directory name, or volume label syntax is incorrect Private Const ERROR_CANCELLED = 1223& ' The operation was canceled by the user Function lWinAPI_MkDir(sPath As String) As Long lWinAPI_MkDir = SHCreateDirectoryEx(0&, sPath, ByVal 0&) End Function ' а книгу как создать? ' например Sub MkSheetWB() Dim sPath As String sPath = "C:\Fold1\Fold2\Fold3\" ' создаем папку lWinAPI_MkDir sPath ' одной строкой! Dim sName As String sName = ActiveSheet.Name sPath = sPath & sName & ".xls" ActiveSheet.Copy ActiveWorkbook.SaveAs Filename:=sPath, FileFormat:=xlExcel8 ActiveWorkbook.Close End Sub
[/vba]Автор - Саня Дата добавления - 29.05.2013 в 01:28
KuklP
Дата: Четверг, 30.05.2013, 08:07 |
Сообщение № 6
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация:
486
±
Замечаний:
0% ±
2003-2010
[vba]Код
Public Sub www1() CreateObject("Shell.Application").Namespace("h:\").NewFolder ("New Folder\New Folder\New Folder") End Sub
[/vba] АПИ: [vba]Код
Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" (ByVal lpPath As String) As Long Public Sub www() MakeSureDirectoryPathExists "C:\Fold1\Fold2\Fold3\" End Sub
[/vba]
[vba]Код
Public Sub www1() CreateObject("Shell.Application").Namespace("h:\").NewFolder ("New Folder\New Folder\New Folder") End Sub
[/vba] АПИ: [vba]Код
Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" (ByVal lpPath As String) As Long Public Sub www() MakeSureDirectoryPathExists "C:\Fold1\Fold2\Fold3\" End Sub
[/vba]KuklP
Ну с НДС и мы чего-то стoим! kuklp60@gmail.com WM Z206653985942, R334086032478, U238399322728
Сообщение отредактировал KuklP - Четверг, 30.05.2013, 08:13
Ответить
Сообщение [vba]Код
Public Sub www1() CreateObject("Shell.Application").Namespace("h:\").NewFolder ("New Folder\New Folder\New Folder") End Sub
[/vba] АПИ: [vba]Код
Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" (ByVal lpPath As String) As Long Public Sub www() MakeSureDirectoryPathExists "C:\Fold1\Fold2\Fold3\" End Sub
[/vba]Автор - KuklP Дата добавления - 30.05.2013 в 08:07
danilka51
Дата: Пятница, 31.05.2013, 11:19 |
Сообщение № 7
Группа: Пользователи
Ранг: Участник
Сообщений: 54
Репутация:
5
±
Замечаний:
0% ±
У меня получилось вот так: [vba]Код
CreateObject("Shell.Application").Namespace(ThisWorkbook.Path).NewFolder (TextBox1) Dim wb As Workbook Set wb = Workbooks.Add wb.SaveAs Filename:=ThisWorkbook.Path & "\" & TextBox1 & "\" & TextBox3 & ".xlsx" wb.Close
[/vba] А через функцию что-то ни как (
У меня получилось вот так: [vba]Код
CreateObject("Shell.Application").Namespace(ThisWorkbook.Path).NewFolder (TextBox1) Dim wb As Workbook Set wb = Workbooks.Add wb.SaveAs Filename:=ThisWorkbook.Path & "\" & TextBox1 & "\" & TextBox3 & ".xlsx" wb.Close
[/vba] А через функцию что-то ни как ( danilka51
Ответить
Сообщение У меня получилось вот так: [vba]Код
CreateObject("Shell.Application").Namespace(ThisWorkbook.Path).NewFolder (TextBox1) Dim wb As Workbook Set wb = Workbooks.Add wb.SaveAs Filename:=ThisWorkbook.Path & "\" & TextBox1 & "\" & TextBox3 & ".xlsx" wb.Close
[/vba] А через функцию что-то ни как ( Автор - danilka51 Дата добавления - 31.05.2013 в 11:19
danilka51
Дата: Пятница, 31.05.2013, 11:22 |
Сообщение № 8
Группа: Пользователи
Ранг: Участник
Сообщений: 54
Репутация:
5
±
Замечаний:
0% ±
и как теперь туда скопировать нужный лист тоже пока ни как не могу понять
и как теперь туда скопировать нужный лист тоже пока ни как не могу понять danilka51
Ответить
Сообщение и как теперь туда скопировать нужный лист тоже пока ни как не могу понять Автор - danilka51 Дата добавления - 31.05.2013 в 11:22
AndreTM
Дата: Пятница, 31.05.2013, 13:18 |
Сообщение № 9
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация:
501
±
Замечаний:
0% ±
2003 & 2010
Вместо Цитата (danilka51 )
[vba]
Код
Dim wb As Workbook Set wb = Workbooks.Add wb.SaveAs Filename:=ThisWorkbook.Path & "\" & TextBox1 & "\" & TextBox3 & ".xlsx" wb.Close
[/vba]
Попробовать [vba]Код
Sheets("Копируемый лист").Copy SaveAs Filename:=ThisWorkbook.Path & "\" & TextBox1 & "\" & TextBox3 & ".xlsx", CreateBackup:=False ActiveWorkbook.Close
[/vba]
Вместо Цитата (danilka51 )
[vba]
Код
Dim wb As Workbook Set wb = Workbooks.Add wb.SaveAs Filename:=ThisWorkbook.Path & "\" & TextBox1 & "\" & TextBox3 & ".xlsx" wb.Close
[/vba]
Попробовать [vba]Код
Sheets("Копируемый лист").Copy SaveAs Filename:=ThisWorkbook.Path & "\" & TextBox1 & "\" & TextBox3 & ".xlsx", CreateBackup:=False ActiveWorkbook.Close
[/vba] AndreTM
Skype: andre.tm.007 Donate: Q iwi: 9517375010
Ответить
Сообщение Вместо Цитата (danilka51 )
[vba]
Код
Dim wb As Workbook Set wb = Workbooks.Add wb.SaveAs Filename:=ThisWorkbook.Path & "\" & TextBox1 & "\" & TextBox3 & ".xlsx" wb.Close
[/vba]
Попробовать [vba]Код
Sheets("Копируемый лист").Copy SaveAs Filename:=ThisWorkbook.Path & "\" & TextBox1 & "\" & TextBox3 & ".xlsx", CreateBackup:=False ActiveWorkbook.Close
[/vba] Автор - AndreTM Дата добавления - 31.05.2013 в 13:18
danilka51
Дата: Пятница, 31.05.2013, 13:30 |
Сообщение № 10
Группа: Пользователи
Ранг: Участник
Сообщений: 54
Репутация:
5
±
Замечаний:
0% ±
Ругается на TextBox3, и говорит: Sub or function not defined
Ругается на TextBox3, и говорит: Sub or function not defined danilka51
Сообщение отредактировал danilka51 - Пятница, 31.05.2013, 13:33
Ответить
Сообщение Ругается на TextBox3, и говорит: Sub or function not defined Автор - danilka51 Дата добавления - 31.05.2013 в 13:30
danilka51
Дата: Пятница, 31.05.2013, 14:02 |
Сообщение № 11
Группа: Пользователи
Ранг: Участник
Сообщений: 54
Репутация:
5
±
Замечаний:
0% ±
ответ найден: [vba]Код
CreateObject("Shell.Application").Namespace(ThisWorkbook.Path).NewFolder (TextBox1) Dim wb As Workbook Set wb = Workbooks.Add With ThisWorkbook.Sheets("Лист2") .Copy wb.Sheets(1) wb.SaveAs Filename:=ThisWorkbook.Path & "\" & TextBox1 & "\" & TextBox3 & ".xlsx" End With wb.Close
[/vba] Но если есть предложения по упрощению, то буду рад!
ответ найден: [vba]Код
CreateObject("Shell.Application").Namespace(ThisWorkbook.Path).NewFolder (TextBox1) Dim wb As Workbook Set wb = Workbooks.Add With ThisWorkbook.Sheets("Лист2") .Copy wb.Sheets(1) wb.SaveAs Filename:=ThisWorkbook.Path & "\" & TextBox1 & "\" & TextBox3 & ".xlsx" End With wb.Close
[/vba] Но если есть предложения по упрощению, то буду рад! danilka51
Ответить
Сообщение ответ найден: [vba]Код
CreateObject("Shell.Application").Namespace(ThisWorkbook.Path).NewFolder (TextBox1) Dim wb As Workbook Set wb = Workbooks.Add With ThisWorkbook.Sheets("Лист2") .Copy wb.Sheets(1) wb.SaveAs Filename:=ThisWorkbook.Path & "\" & TextBox1 & "\" & TextBox3 & ".xlsx" End With wb.Close
[/vba] Но если есть предложения по упрощению, то буду рад! Автор - danilka51 Дата добавления - 31.05.2013 в 14:02
danilka51
Дата: Пятница, 31.05.2013, 14:07 |
Сообщение № 12
Группа: Пользователи
Ранг: Участник
Сообщений: 54
Репутация:
5
±
Замечаний:
0% ±
Еще одно но: Если такой лист уже существует, то нужно чтобы добавлял с указанием даты
Еще одно но: Если такой лист уже существует, то нужно чтобы добавлял с указанием даты danilka51
Ответить
Сообщение Еще одно но: Если такой лист уже существует, то нужно чтобы добавлял с указанием даты Автор - danilka51 Дата добавления - 31.05.2013 в 14:07
danilka51
Дата: Пятница, 31.05.2013, 14:33 |
Сообщение № 13
Группа: Пользователи
Ранг: Участник
Сообщений: 54
Репутация:
5
±
Замечаний:
0% ±
Кому интересно что получилось:
Ответить
Сообщение Кому интересно что получилось: Автор - danilka51 Дата добавления - 31.05.2013 в 14:33