Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.08.2012, 19:42   #1
RISagitov
Форумчанин
 
Регистрация: 19.05.2012
Сообщений: 237
По умолчанию Зачем нужен Chr(34)???

''....там где указываем имя и путь архива

Sub СозданиеSFXархива()
' имя создаваемого архива будет иметь вид Мой архив 17-Feb-2009.exe
WinRAR_Path = """C:\Program Files\WinRAR\WinRAR.exe"""
WinRAR_Keys = " a -r -sfx -ep -agDD-MMM-YYYY "

FolderPath = "C:\Documents and Settings\Игорь\Рабочий стол\" ' папка с файлами

ArchieveFileName = Chr(34) & FolderPath & "Мой архив .exe" & Chr(34) ' имя и путь создаваемого архива

Mask = Chr(34) & FolderPath & "*.xls" & Chr(34) ' добавляем только файлы Excel
Icon = " -iicon" & Chr(34) & "C:\Program Files\Microsoft Office\OFFICE11\MSN.ICO" & Chr(34) ' иконка

CommandLine = WinRAR_Path & WinRAR_Keys & ArchieveFileName & " " & Mask & Icon
'MsgBox CommandLine
Shell CommandLine
End Sub


''' WinRAR_Path = """C:\Program Files\WinRAR\WinRAR.exe""" - и тут зачем столько кавычек? обязательно так?


http://excelvba.ru/code/CreateBackup

Последний раз редактировалось RISagitov; 07.08.2012 в 19:44.
RISagitov вне форума Ответить с цитированием
Старый 07.08.2012, 20:43   #2
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

Путь C:\Program Files\WinRAR\WinRAR.exe содержит пробел, поэтому в командной строке его необходимо взять в кавычки, например
Код:
dir "C:\Program Files\WinRAR\WinRAR.exe"
По правилам синтаксиса VB*, для изображения символа " в текстовой строке (т.е. внутри кавычек) используются две кавычки подряд, например в окне Immediate
Код:
?"a""b"
a"b
Поэтому Chr(34) - это аналог текстовой константы """" , кому-то так кажется проще или нагляднее.
Эту строку
Код:
Mask = Chr(34) & FolderPath & "*.xls" & Chr(34) ' добавляем только файлы Excel
можно заменить на
Код:
Mask = """" & FolderPath & "*.xls""" ' добавляем только файлы Excel
exceleved@yandex.ru Яндекс.Деньги: 410011500007619

Последний раз редактировалось Казанский; 07.08.2012 в 20:46.
Казанский вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
зачем нужен IdAntiFreeze1? cargo29 Компоненты Delphi 8 05.03.2012 11:40
Зачем нужен static Kasper1 Общие вопросы C/C++ 5 21.12.2010 01:53
Зачем нужен Unit? alex198555 Общие вопросы Delphi 3 20.08.2010 01:10
.NET, зачем он нужен? Qousio Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate) 80 18.12.2009 23:42
Зачем нужен void? Сергей089 Общие вопросы C/C++ 7 23.03.2009 17:08