powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Выполнение макроса Excel 2003 в 2007
8 сообщений из 8, страница 1 из 1
Выполнение макроса Excel 2003 в 2007
    #37215063
DUDALS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброе время суток. Имеется следующий код в макросе Excel 2003. Как сделать его выполнение в 2007 и выше? Куда копать?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
Dim objFSO As FileSystemObject
Dim objFile As File
Dim intNum As Integer 'Количество файлов
Dim strNameFile As String 'Имя файла
Dim strDataSozdania As String ' Дата создания
Dim strObemzSozd As String ' Объем созданного файла
Dim strDataRedakt As String 'Дата редактирования
Dim strObemRedakt As String 'Объем редактированного файла
Dim i As Integer, iP As Integer 'Переменные для цикла
Dim r As Integer, rP As Integer 'Переменные для цикла
'Dim nI As Integer, nDirectory As Integer
Dim sFileName As String 'Имя файла
Dim sStartPath As String 'Начальный каталог


Private Sub CommandButton1_Click()
    If ActiveWorkbook.Application.Version > "11.0" Then
        MsgBox "Для работы программы должен быть установлен Microsoft Office 2003 или меньше."
        Exit Sub
    End If
    Set objFSO = New FileSystemObject
    'Путь к файлу
    sStartPath = Application.ActiveWorkbook.Path & "\"
    Call PrintTextToTabl
End Sub

Sub PrintFile()
    Range("A" & iP).Select
    ActiveCell.FormulaR1C1 = rP & "." 
    Range("C" & iP).Select
    ActiveCell.FormulaR1C1 = sFileName 
    Range("D" & iP).Select
    ActiveCell.FormulaR1C1 = strDataSozdania 
    If strDataSozdania <> strDataRedakt Then
        Range("E" & iP).Select
        ActiveCell.FormulaR1C1 = strObemzSozd 
        Range("F" & iP).Select
        ActiveCell.FormulaR1C1 = strDataRedakt 
        Range("G" & iP).Select
        ActiveCell.FormulaR1C1 = strObemRedakt 
    Else
        Range("E" & iP).Select
        ActiveCell.FormulaR1C1 = strObemzSozd 
    End If
 
     Range("A" & iP & ":I" & iP).Select
    Selection.Borders(xlDiagonalDown).LineStyle = xlNone
    Selection.Borders(xlDiagonalUp).LineStyle = xlNone
    With Selection.Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .Weight = xlThin
        .ColorIndex = xlAutomatic
    End With
    With Selection.Borders(xlEdgeTop)
        .LineStyle = xlContinuous
        .Weight = xlThin
        .ColorIndex = xlAutomatic
    End With
    With Selection.Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .Weight = xlThin
        .ColorIndex = xlAutomatic
    End With
    With Selection.Borders(xlEdgeRight)
        .LineStyle = xlContinuous
        .Weight = xlThin
        .ColorIndex = xlAutomatic
    End With
    With Selection.Borders(xlInsideVertical)
        .LineStyle = xlContinuous
        .Weight = xlThin
        .ColorIndex = xlAutomatic
    End With
    With Selection.Borders(xlInsideHorizontal)
    End With
iP = iP +  1 
rP = rP +  1 
End Sub


Sub PrintTextToTabl()
With Application.FileSearch
  .LookIn = sStartPath
  .SearchSubFolders = True
  .FileType = msoFileTypeAllFiles
If .Execute >  0  Then
    If MsgBox("Продолжить заполнение внутренней описи идалив имеющиеся данные?", vbQuestion + vbDefaultButton2 + vbYesNo, "Всего найденных файлов : " & .FoundFiles.Count & ".") = vbYes Then
    'Ощищаем таблицу
    Range("A7:I3500").Select
    Selection.ClearContents
    Range("A7:I3500").Select
    Selection.Borders(xlDiagonalDown).LineStyle = xlNone
    Selection.Borders(xlDiagonalUp).LineStyle = xlNone
    Selection.Borders(xlEdgeLeft).LineStyle = xlNone
    With Selection.Borders(xlEdgeTop)
        .LineStyle = xlContinuous
        .Weight = xlThin
        .ColorIndex = xlAutomatic
    End With
    Selection.Borders(xlEdgeBottom).LineStyle = xlNone
    Selection.Borders(xlEdgeRight).LineStyle = xlNone
    Selection.Borders(xlInsideVertical).LineStyle = xlNone
    Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
            iP =  7 
            rP =  1 
        For i =  1  To .FoundFiles.Count
            Set objFile = objFSO.GetFile(.FoundFiles(i))
            ' вывод имен файлов
               sFileName = objFile.Name
                If sFileName <> "Внутренняя опись.xls" Then
                    strDataSozdania = Format(objFile.DateCreated, "DD.MM.YY")
                    strObemzSozd = objFile.Size
                    strDataRedakt = Format(objFile.DateLastModified, "DD.MM.YY")
                    strObemRedakt = objFile.Size
                    'заносим в таблицу
                    Call PrintFile
                End If
        Next i
    End If
Else
        MsgBox "Не найдено подходящих файлов"
End If
        Exit Sub
        MsgBox "Формирование описи завершено!" & vbCrLf & "Внесено - " & rP -  1  & " файлов.", vbInformation + vbOKOnly, "Поздравляю ;)"
End With
End Sub

...
Рейтинг: 0 / 0
Выполнение макроса Excel 2003 в 2007
    #37215093
DUDALS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сам файл
...
Рейтинг: 0 / 0
Выполнение макроса Excel 2003 в 2007
    #37215115
Фотография Shamanus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DUDALS,

для начала исправьте
Код: plaintext
1.
2.
ActiveWorkbook.Application.Version > "11.0" 
на 
ActiveWorkbook.Application.Version > "12.0"

А дальше по обстоятельствам
...
Рейтинг: 0 / 0
Выполнение макроса Excel 2003 в 2007
    #37215227
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DUDALS,

кроме тега SRC еще есть тег spoiler.
...
Рейтинг: 0 / 0
Выполнение макроса Excel 2003 в 2007
    #37215720
DUDALS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сори за spoiler.
Shamanus,
В том то и дело, что я специально пока вставил ограничитель версии экселя. В 2007 выдает ошибку.
Ой. И еще раз прошу прощения. Пароль на макрос 1186710
Вопрос остается в силе
...
Рейтинг: 0 / 0
Выполнение макроса Excel 2003 в 2007
    #37215743
NullUzer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ShamanusDUDALS,

для начала исправьте
Код: plaintext
1.
2.
ActiveWorkbook.Application.Version > "11.0" 
на 
ActiveWorkbook.Application.Version > "12.0"

А дальше по обстоятельствам

Код: plaintext
ActiveWorkbook.Application.Version >= "12.0"
...
Рейтинг: 0 / 0
Выполнение макроса Excel 2003 в 2007
    #37215755
NullUzer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
NullUzer,

Или можно:
Код: plaintext
Val(Application.Version) >=  12 
...
Рейтинг: 0 / 0
Выполнение макроса Excel 2003 в 2007
    #37215787
Фотография Shamanus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Выполнение макроса Excel 2003 в 2007
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]