|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
10.07.2009, 16:12 | #1 |
Пользователь
Регистрация: 14.08.2008
Сообщений: 78
|
Ошибка при архивировании файлов
Есть вот такой фрагмент кода:
Код HTML:
Dim oApp As Object Set oApp = CreateObject("Shell.Application") Dim copiedFiles As New Dictionary k = -1 With aSheet.Hyperlinks 'On Error GoTo Cleanup PrepareOK = True ' <-- подготовка к архивированию окончена ArchOK = False For i = 1 To .count If .item(i).Range.Column = COL_FILE Then tmpRow = .item(i).Range.row For j = 1 To UBound(FileList) If tmpRow = FileList(j) Then If copiedFiles.Exists(.item(i).name) Then MsgBox "Попытка повторно записать в архив файл с именем " & .item(i).name & vbCrLf & "Внимание! В архиве нет структуры папок, поэтому архивируйте файлы с совпадающими именами отдельно!" GoTo Cleanup Else ' Добавим в коллекцию. copiedFiles.Add .item(i).name, i ' Вычислим путь к этому файлу tmpStr1 = IIf((Left(.item(i).Address, 2) = "\\") Or (Mid(.item(i).Address, 2, 2) = ":\"), .item(i).Address, QADir & .item(i).Address) If oFS.FileExists(tmpStr1) Then k = k + 1 ' 1. Copy the file to the compressed folder tmpStr1 = Replace(tmpStr1, "/", "\") oApp.Namespace(aN & "\").CopyHere CStr(tmpStr1) Else MsgBox "Файл с полным именем" & vbCrLf & vbCrLf & _ tmpStr1 & vbCrLf & vbCrLf & _ "не существует.", vbExclamation, "Файл не найден" End If End If Exit For End If Next j End If Next i |
10.07.2009, 16:26 | #2 | |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Цитата:
передаются неверные параметры - aN или tmpStr1 Поставьте перед этой строкой вот что: Код:
(обратите внимание на наличие лишних\пропущенных слешей и запрещённых символов в именах файлов\папок) |
|
10.07.2009, 17:28 | #3 |
Пользователь
Регистрация: 14.08.2008
Сообщений: 78
|
C именами все в порядке, проверила.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Приложение которое выводит список файлов текущего каталога и при клике на любом из файлов откроет его. | LimanSSk | Общие вопросы Delphi | 2 | 18.05.2009 16:03 |
Копирование файлов при помощи потоков | Aleshin | Помощь студентам | 0 | 25.04.2009 14:00 |
Ошибка при линковке | Лотос | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 25 | 22.02.2009 20:24 |
Формирование листа при множественом выборе файлов | Руслантус | Общие вопросы C/C++ | 2 | 09.08.2008 23:16 |
Проблемы при удалении файлов | Pavel55 | Общие вопросы Delphi | 7 | 10.01.2008 00:45 |