Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Contributor


Сообщения: 2710
Благодарности: 1686

Профиль | Отправить PM | Цитировать


Вложения
Тип файла: rar ответы.rar
(17.7 Kb, 11 просмотров)

Вот vbs-скрипт с решением Вашей задачи.
Код: Выделить весь код
Book = "файл.xls"
NFile = "картинка.jpg"                              ' Имя размножаемого файла
NewPref = "p"                                       ' Префикс нового имени
NewSuff = "-0mw"                                    ' Суффикс нового имени
    
First = "A1"                                        ' Верхняя клетка с данными в столбце

Where=CreateObject("WScript.Shell").CurrentDirectory+"\"
PBook=Where+Book

' MsgBox PBook

Set XL = CreateObject("Excel.Application")

XL.Visible = False    ' True
XL.Workbooks.Open PBook
    
PName = Where + NFile

Set FSO = CreateObject("Scripting.FileSystemObject")
    
If FSO.FileExists(PName) Then
    Ext = FSO.GetExtensionName(PName)

    i = 0
    With XL.Range(First)
        Do
            RR = CStr(.Offset(i, 0))
            If Len(Trim(CStr(.Offset(i, 0)))) = 0 Then Exit Do
            i = i + 1
            aaa = FSO.CopyFile(PName, Where + "\" + NewPref + RR + NewSuff + "." + Ext, True)
        Loop
        MsgBox "Файл" + vbCrLf + PName + vbCrLf + "скопирован " + CStr(i) + " раз"
    End With
Else
    MsgBox "Файл" + vbCrLf + PName + vbCrLf + "не найден"
End If

XL.Quit
Скрипт должен быть расположен в той же папке, что картинка.jpg и файл.xls. В тексте скрипта настройте реальные имена файлов и адрес ячейки, с которой начинаются данные в столбце файл.xls.

Во вложенном файле присутствует таблица с примером использования макроса. Открываете таблицу, Меню - Сервис - Макросы - Макрос назвал rrr, изменяете его: пИшите реальные имена файлов и указываете начальную клетку. Сохраняете, запускаете на выполнение.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

Это сообщение посчитали полезным следующие участники:

Отправлено: 21:21, 31-05-2016 | #4