Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Реестр не работает - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Реестр не работает
anger47 Дата: Понедельник, 23.07.2012, 12:17 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 192
Репутация: 6 ±
Замечаний: 0% ±

Здравствуйте! У меня есть много файлов екселя с расширением. xlsm. Нужно макрос, чтобы брал данные из Листа1 (Вихідні дані) из ячеек, что прописаны в макросе (ну на всякий случай напишу: D2, C10:H10, C12:D12, и из вкладки заказчик. не знаю как прописать в макросе) и писал их по порядку как в файле: Реестр.xls. Файл добавляю
К сообщению приложен файл: anger47.rar (65.0 Kb) · 3820640.xls (41.0 Kb)


Сообщение отредактировал anger47 - Понедельник, 23.07.2012, 12:46
 
Ответить
СообщениеЗдравствуйте! У меня есть много файлов екселя с расширением. xlsm. Нужно макрос, чтобы брал данные из Листа1 (Вихідні дані) из ячеек, что прописаны в макросе (ну на всякий случай напишу: D2, C10:H10, C12:D12, и из вкладки заказчик. не знаю как прописать в макросе) и писал их по порядку как в файле: Реестр.xls. Файл добавляю

Автор - anger47
Дата добавления - 23.07.2012 в 12:17
anger47 Дата: Понедельник, 23.07.2012, 13:07 | Сообщение № 2
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 192
Репутация: 6 ±
Замечаний: 0% ±

"из вкладки заказчик" - из рисунка выделенная область
К сообщению приложен файл: 9444373.jpg (60.8 Kb)


Сообщение отредактировал anger47 - Понедельник, 23.07.2012, 13:08
 
Ответить
Сообщение"из вкладки заказчик" - из рисунка выделенная область

Автор - anger47
Дата добавления - 23.07.2012 в 13:07
Jhonson Дата: Понедельник, 23.07.2012, 13:55 | Сообщение № 3
Группа: Друзья
Ранг: Ветеран
Сообщений: 514
Репутация: 169 ±
Замечаний: 0% ±

Подозреваю, что нужно заменить строчку:
[vba]
Code
.Cells(i, 5).FormulaR1C1 = s & "!R14C3"
[/vba]
на [vba]
Code
.Cells(i, 5).FormulaR1C1 = "='" & Fold & "[" & f & "]Лист4'!R1C4"
[/vba]

anger47, не понятно почему Вы использовали форму, а не стандартный выпадающий список?


"Ничто не приносит людям столько неприятностей, как разум."
 
Ответить
СообщениеПодозреваю, что нужно заменить строчку:
[vba]
Code
.Cells(i, 5).FormulaR1C1 = s & "!R14C3"
[/vba]
на [vba]
Code
.Cells(i, 5).FormulaR1C1 = "='" & Fold & "[" & f & "]Лист4'!R1C4"
[/vba]

anger47, не понятно почему Вы использовали форму, а не стандартный выпадающий список?

Автор - Jhonson
Дата добавления - 23.07.2012 в 13:55
Саня Дата: Понедельник, 23.07.2012, 14:03 | Сообщение № 4
Группа: Друзья
Ранг: Ветеран
Сообщений: 1068
Репутация: 560 ±
Замечаний: 0% ±

XL 2016
название xlsm-файла "нездоровое" - квадратные скобки не есть гуд.

изменишь название, будет работать

D2, C10:H10, C12:D12 --> D2, C10, C12
(у тебя ж там объединенные ячейки)
 
Ответить
Сообщениеназвание xlsm-файла "нездоровое" - квадратные скобки не есть гуд.

изменишь название, будет работать

D2, C10:H10, C12:D12 --> D2, C10, C12
(у тебя ж там объединенные ячейки)

Автор - Саня
Дата добавления - 23.07.2012 в 14:03
anger47 Дата: Понедельник, 23.07.2012, 14:05 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 192
Репутация: 6 ±
Замечаний: 0% ±

Почему ошибка на рисунке?

Quote (Jhonson)
anger47, не понятно почему Вы использовали форму, а не стандартный выпадающий список?

честно говоря я уже и сам не знаю, зачем сам себе жизнь усложнил, сначала хотел, что бы было красиво. а теперь понимаю...что форма пипец как проблем добавляет, хз подумаю мб и поменяю!
кстати подскажите правильное расширение файла єкселя 2003 с макросами .xlm?
К сообщению приложен файл: 3148425.jpg (36.7 Kb)


Сообщение отредактировал anger47 - Понедельник, 23.07.2012, 14:05
 
Ответить
СообщениеПочему ошибка на рисунке?

Quote (Jhonson)
anger47, не понятно почему Вы использовали форму, а не стандартный выпадающий список?

честно говоря я уже и сам не знаю, зачем сам себе жизнь усложнил, сначала хотел, что бы было красиво. а теперь понимаю...что форма пипец как проблем добавляет, хз подумаю мб и поменяю!
кстати подскажите правильное расширение файла єкселя 2003 с макросами .xlm?

Автор - anger47
Дата добавления - 23.07.2012 в 14:05
Jhonson Дата: Понедельник, 23.07.2012, 14:11 | Сообщение № 6
Группа: Друзья
Ранг: Ветеран
Сообщений: 514
Репутация: 169 ±
Замечаний: 0% ±

Чтение информации из файла я бы реализовал немного по другому:
[vba]
Code
Sub ertert()
Dim i&, Fold$, f$, s$, vData As Variant
Application.ScreenUpdating = False
If Right(ThisWorkbook.Path, 1) <> "\" Then Fold = ThisWorkbook.Path & "\" Else Fold = ThisWorkbook.Path
f = Dir(Fold & "*.xlsm*", vbNormal)

With Range("A6:F" & Cells(Rows.Count, 1).End(xlUp).Row + 1)
       .ClearContents
       Do While f <> ""
           If f <> ThisWorkbook.Name Then
               Application.Workbooks.Open Filename:=Fold & f, UpdateLinks:=True, ReadOnly:=True
               i = i + 1: .Cells(i, 1).Value = i
               .Cells(i, 2).Value = Sheets("Вихідні дані").Range("d2").Value
               .Cells(i, 3).Value = Sheets("Вихідні дані").Range("C10:H10").Value
               .Cells(i, 4).Value = Sheets("Вихідні дані").Range("C12:D12").Value
               .Cells(i, 5).Value = Sheets("Лист4").Range("d1").Value
               ActiveWorkbook.Close False
           End If
           f = Dir()
       Loop
       With .Resize(i)
           .Value = .Value
       End With
End With
Application.ScreenUpdating = True
End Sub
[/vba] (не проверял, думаю должно работать!)
Quote (anger47)
правильное расширение файла єкселя 2003 с макросами .xlm?
Правильное расширение будет XLS.


"Ничто не приносит людям столько неприятностей, как разум."

Сообщение отредактировал Jhonson - Понедельник, 23.07.2012, 14:12
 
Ответить
СообщениеЧтение информации из файла я бы реализовал немного по другому:
[vba]
Code
Sub ertert()
Dim i&, Fold$, f$, s$, vData As Variant
Application.ScreenUpdating = False
If Right(ThisWorkbook.Path, 1) <> "\" Then Fold = ThisWorkbook.Path & "\" Else Fold = ThisWorkbook.Path
f = Dir(Fold & "*.xlsm*", vbNormal)

With Range("A6:F" & Cells(Rows.Count, 1).End(xlUp).Row + 1)
       .ClearContents
       Do While f <> ""
           If f <> ThisWorkbook.Name Then
               Application.Workbooks.Open Filename:=Fold & f, UpdateLinks:=True, ReadOnly:=True
               i = i + 1: .Cells(i, 1).Value = i
               .Cells(i, 2).Value = Sheets("Вихідні дані").Range("d2").Value
               .Cells(i, 3).Value = Sheets("Вихідні дані").Range("C10:H10").Value
               .Cells(i, 4).Value = Sheets("Вихідні дані").Range("C12:D12").Value
               .Cells(i, 5).Value = Sheets("Лист4").Range("d1").Value
               ActiveWorkbook.Close False
           End If
           f = Dir()
       Loop
       With .Resize(i)
           .Value = .Value
       End With
End With
Application.ScreenUpdating = True
End Sub
[/vba] (не проверял, думаю должно работать!)
Quote (anger47)
правильное расширение файла єкселя 2003 с макросами .xlm?
Правильное расширение будет XLS.

Автор - Jhonson
Дата добавления - 23.07.2012 в 14:11
anger47 Дата: Понедельник, 23.07.2012, 14:14 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 192
Репутация: 6 ±
Замечаний: 0% ±

сейчас все проверю. отпишусь
 
Ответить
Сообщениесейчас все проверю. отпишусь

Автор - anger47
Дата добавления - 23.07.2012 в 14:14
anger47 Дата: Понедельник, 23.07.2012, 14:32 | Сообщение № 8
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 192
Репутация: 6 ±
Замечаний: 0% ±

Jhonson, все работает спасибо, а возможно сделать так, что бы не было открытия файла:
Quote (Jhonson)
Open Filename:=Fold
?
а то на другом компе с установленным 2003 экс, постоянный вопрос преобразования файла, а если таких файлов больше 20 шт, ето тоже занимает время. спс за понимание
 
Ответить
СообщениеJhonson, все работает спасибо, а возможно сделать так, что бы не было открытия файла:
Quote (Jhonson)
Open Filename:=Fold
?
а то на другом компе с установленным 2003 экс, постоянный вопрос преобразования файла, а если таких файлов больше 20 шт, ето тоже занимает время. спс за понимание

Автор - anger47
Дата добавления - 23.07.2012 в 14:32
Jhonson Дата: Понедельник, 23.07.2012, 14:59 | Сообщение № 9
Группа: Друзья
Ранг: Ветеран
Сообщений: 514
Репутация: 169 ±
Замечаний: 0% ±

Попробуйте добавить
[vba]
Code
Application.DisplayAlerts = False
Application.DisplayAlerts = True
[/vba]
там же, где включаете-выключаете [vba]
Code
Application.ScreenUpdating
[/vba]


"Ничто не приносит людям столько неприятностей, как разум."
 
Ответить
СообщениеПопробуйте добавить
[vba]
Code
Application.DisplayAlerts = False
Application.DisplayAlerts = True
[/vba]
там же, где включаете-выключаете [vba]
Code
Application.ScreenUpdating
[/vba]

Автор - Jhonson
Дата добавления - 23.07.2012 в 14:59
RAN Дата: Понедельник, 23.07.2012, 15:17 | Сообщение № 10
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Чтобы не было проблем с преобразованием, нужно все файлы сохранить как xls.

Жень, на какие файлы запас? smile
f = Dir(Fold & "*.xlsm*", vbNormal)


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеЧтобы не было проблем с преобразованием, нужно все файлы сохранить как xls.

Жень, на какие файлы запас? smile
f = Dir(Fold & "*.xlsm*", vbNormal)

Автор - RAN
Дата добавления - 23.07.2012 в 15:17
Jhonson Дата: Понедельник, 23.07.2012, 15:26 | Сообщение № 11
Группа: Друзья
Ранг: Ветеран
Сообщений: 514
Репутация: 169 ±
Замечаний: 0% ±

Quote (RAN)
Жень, на какие файлы запас? f = Dir(Fold & "*.xlsm*", vbNormal)
Андрей, этот макрос не я писал, я только немного его подправил.


"Ничто не приносит людям столько неприятностей, как разум."
 
Ответить
Сообщение
Quote (RAN)
Жень, на какие файлы запас? f = Dir(Fold & "*.xlsm*", vbNormal)
Андрей, этот макрос не я писал, я только немного его подправил.

Автор - Jhonson
Дата добавления - 23.07.2012 в 15:26
anger47 Дата: Понедельник, 23.07.2012, 16:23 | Сообщение № 12
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 192
Репутация: 6 ±
Замечаний: 0% ±

Quote (RAN)
Чтобы не было проблем с преобразованием, нужно все файлы сохранить как xls.

как пере сохранить файл .xlsm в .xls, но что бы не было вот такого вопроса?
К сообщению приложен файл: 5565078.jpg (15.3 Kb)


Сообщение отредактировал anger47 - Понедельник, 23.07.2012, 16:23
 
Ответить
Сообщение
Quote (RAN)
Чтобы не было проблем с преобразованием, нужно все файлы сохранить как xls.

как пере сохранить файл .xlsm в .xls, но что бы не было вот такого вопроса?

Автор - anger47
Дата добавления - 23.07.2012 в 16:23
anger47 Дата: Понедельник, 23.07.2012, 16:33 | Сообщение № 13
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 192
Репутация: 6 ±
Замечаний: 0% ±

Quote (Jhonson)
Попробуйте добавить

Application.DisplayAlerts = False
Application.DisplayAlerts = True

там же, где включаете-выключаете

Application.ScreenUpdating

все равно запускает файлы
 
Ответить
Сообщение
Quote (Jhonson)
Попробуйте добавить

Application.DisplayAlerts = False
Application.DisplayAlerts = True

там же, где включаете-выключаете

Application.ScreenUpdating

все равно запускает файлы

Автор - anger47
Дата добавления - 23.07.2012 в 16:33
RAN Дата: Понедельник, 23.07.2012, 17:39 | Сообщение № 14
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Да просто надо не от имени (расширения) файла буковку отгрызать, а "сохранить как" - файл 2003 (xls)


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеДа просто надо не от имени (расширения) файла буковку отгрызать, а "сохранить как" - файл 2003 (xls)

Автор - RAN
Дата добавления - 23.07.2012 в 17:39
Jhonson Дата: Вторник, 24.07.2012, 08:46 | Сообщение № 15
Группа: Друзья
Ранг: Ветеран
Сообщений: 514
Репутация: 169 ±
Замечаний: 0% ±

Quote (anger47)
все равно запускает файлы

ИМХО В 2003 офисе файлы XLSM, не запуская их, прочитать не удастся!
Таким образом или сохраняем все файлы в формате XLS, или читаем файлы с явным открытием и закрытием.


"Ничто не приносит людям столько неприятностей, как разум."

Сообщение отредактировал Jhonson - Вторник, 24.07.2012, 08:52
 
Ответить
Сообщение
Quote (anger47)
все равно запускает файлы

ИМХО В 2003 офисе файлы XLSM, не запуская их, прочитать не удастся!
Таким образом или сохраняем все файлы в формате XLS, или читаем файлы с явным открытием и закрытием.

Автор - Jhonson
Дата добавления - 24.07.2012 в 08:46
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!