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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.09.2012, 10:12   #21
tibhar940
Пользователь
 
Регистрация: 31.07.2012
Сообщений: 79
По умолчанию

Цитата:
Сообщение от kuklp Посмотреть сообщение
>> Что-то ругается на:...
Ну выложите пример, где ругается. Посмотрим, подправим.
Вроде бы понимание начало ко мне приходить. Кое что подправил, поменял местами и заработало!

Вот что получилось в итоге:
Код:
Sub PaketnayaObrabotkaKON()
'On Error Resume Next
Set Fso = CreateObject("Scripting.FileSystemObject")
Set folder = Fso.GetFolder("C:\Documents and Settings\1")
MsgBox "Ну что, поехали?"
Dim chelovek As Variant
chelovek = InputBox("Выберите", "CHEL", "")
Dim instrumentik As Variant
instrumentik = InputBox("Выберите", "ИНСТРУМЕНТ", "")

For Each File In folder.Files
With Workbooks.Open(File.Path).Worksheets(1)
.[a1].Value = "CHEL с INSTRUMENT"
.[a3].Value = " "
.PageSetup.RightHeader = " &""Arial,полужирный""Колонтитул"
.Name = "Страничка" 
.Range("A2").Replace "за период", "в течение периода"
.Range("D:D,O:O").Delete
.[Q:Q].Interior.ColorIndex = xlNone
If chelovek <> "" Then
.Range("A1").Replace "CHEL", chelovek, xlPart
End If
If instrumentik <> "" Then
.Range("A1").Replace "INSTRUMENT", instrumentik, xlPart
End If
.Parent.Close -1
End With
Next
End Sub
Спасибо большое! Без вашей помощи у меня бы ничего не вышло.
tibhar940 вне форума Ответить с цитированием
Старый 12.09.2012, 13:07   #22
tibhar940
Пользователь
 
Регистрация: 31.07.2012
Сообщений: 79
Вопрос

А подскажите еще один момент?
Допустим мне нужно применить разное форматирование к 8 типам файлов. И я хочу это делать несколькими простыми манипуляциями с запуском одного макроса.
1)Я создал файлик где напротив нужного типа файлов пишу цифру 1 если нужно чтобы этот тип файлов форматировало.
2)Я подготовил 8 макросов.
3)Сделал макрос, который инициирует запуск нужного макроса в случае если в нужной ячейке находится значение "1".

Однако значения инпутбоксов для всех 8 типов данных одинаковые. И мне хотелось бы вписывать их один раз. По идее тогда эти инпутбоксы нужно перенести в макрос из пункта 3. Но как использовать вписанные в инпутбокс данные в других макросах?

В принципе я подумал как можно было бы это сделать. Но у меня очень глупый код выходит:
Код:
Sub a()
Dim Slovo As Variant
Slovo = InputBox("", "Окошко", "")
Range("d1") = Slovo
If Range("b1") = "1" Then
Application.Run "b"
End If
End Sub
Код:
Sub b()
If Range("d1") <> " " Then
Range("f1").Replace "11", Range("d1"), xlPart
End If
End Sub
Но этот код применим к одному файлу. А в моём случае нужно будет вытаскивать значение Range("f1") из другого (но заранее определённого файла). Как это можно сделать? Я так понимаю через ту же функцию гет фолдер и прочее?

З.Ы. - кстати почему из заполненной ячейки можно сделать пустую с помощью " "? а заменить " " на значение нельзя? По крайней мере у меня таким макаром это не работает)

Последний раз редактировалось tibhar940; 12.09.2012 в 18:02.
tibhar940 вне форума Ответить с цитированием
Старый 12.09.2012, 19:27   #23
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Модеры, я прошу прощения за оффтоп. Удалите мой ответ, когда сочтете нужным.
Sub a()
Dim Slovo As Variant
tibhar940, эти строки всего лишь стоило поменять местами:-) И еще, в правилах любого подобного форума есть постулат: Один вопрос - одна тема. Модеры этого форума мои друзья. Поэтому если и вжарят, то надеюсь, небольно:-) И прекращаем оффтопить в теме.
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 12.09.2012, 22:06   #24
tibhar940
Пользователь
 
Регистрация: 31.07.2012
Сообщений: 79
По умолчанию

Цитата:
Сообщение от kuklp Посмотреть сообщение
Модеры, я прошу прощения за оффтоп. Удалите мой ответ, когда сочтете нужным.
Sub a()
Dim Slovo As Variant
tibhar940, эти строки всего лишь стоило поменять местами:-) И еще, в правилах любого подобного форума есть постулат: Один вопрос - одна тема. Модеры этого форума мои друзья. Поэтому если и вжарят, то надеюсь, небольно:-) И прекращаем оффтопить в теме.

Спасибо. Больше никакого оффтопа. Обещаю! Не буду впредь нарушать правила этого замечательнейшего форума.
tibhar940 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Экспорт значений из нескольких документов Word в одну таблицу Excel для дальнейших расчетов. YJYNGK Microsoft Office Excel 0 30.10.2010 13:42
Возможно ли изменить колонтитул нескольких документов сразу Grant84 Microsoft Office Word 2 14.04.2010 18:41
Печать документов. Busine2009 Microsoft Office Word 8 18.06.2009 14:36
автозаполнение из нескольких документов Азамат Microsoft Office Excel 2 04.06.2008 11:25