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

Вход

Регистрация

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

 

= Мир MS Excel/Изменяю макрос, не пойму почему перестаёт функционировать... - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Изменяю макрос, не пойму почему перестаёт функционировать...
Стася Дата: Пятница, 08.02.2013, 13:49 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

dry Всем привет, так как сам являюсь нубкой в экселе прошу о помощи сторожил, макрос служит для печаити другого листа из книги ориентируясь на фильтр одной из страниц....

[vba]
Код
If Ch = "H" Or Ch = "h" Then
For i = 1 To ActiveWorkbook.Sheets("Талон").Cells(7, 2)
ActiveWorkbook.Sheets("H").Cells(1, 2) = ActiveWorkbook.Sheets("Учет").Cells(r, 9)
ActiveWorkbook.Sheets("H").Cells(3, 2) = ActiveWorkbook.Sheets("Учет").Cells(r, 1)
ActiveWorkbook.Sheets("H").Cells(4, 2) = ActiveWorkbook.Sheets("Учет").Cells(r, 6) & " - " & ActiveWorkbook.Sheets("Учет").Cells(r, 5)
ActiveWorkbook.Sheets("H").Cells(5, 2) = i
ActiveWorkbook.Sheets("H").Cells(5, 3) = ActiveWorkbook.Sheets("Талон").Cells(7, 2)
ActiveWorkbook.Sheets("H").PrintOut copies:=1
Next i
End If
[/vba]
выдержка из него, до этого вместо Н там числилось SP, я сменил но приусловиях выдает ошибку...(
 
Ответить
Сообщениеdry Всем привет, так как сам являюсь нубкой в экселе прошу о помощи сторожил, макрос служит для печаити другого листа из книги ориентируясь на фильтр одной из страниц....

[vba]
Код
If Ch = "H" Or Ch = "h" Then
For i = 1 To ActiveWorkbook.Sheets("Талон").Cells(7, 2)
ActiveWorkbook.Sheets("H").Cells(1, 2) = ActiveWorkbook.Sheets("Учет").Cells(r, 9)
ActiveWorkbook.Sheets("H").Cells(3, 2) = ActiveWorkbook.Sheets("Учет").Cells(r, 1)
ActiveWorkbook.Sheets("H").Cells(4, 2) = ActiveWorkbook.Sheets("Учет").Cells(r, 6) & " - " & ActiveWorkbook.Sheets("Учет").Cells(r, 5)
ActiveWorkbook.Sheets("H").Cells(5, 2) = i
ActiveWorkbook.Sheets("H").Cells(5, 3) = ActiveWorkbook.Sheets("Талон").Cells(7, 2)
ActiveWorkbook.Sheets("H").PrintOut copies:=1
Next i
End If
[/vba]
выдержка из него, до этого вместо Н там числилось SP, я сменил но приусловиях выдает ошибку...(

Автор - Стася
Дата добавления - 08.02.2013 в 13:49
Стася Дата: Пятница, 08.02.2013, 13:50 | Сообщение № 2
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

То бишь при сп корректно работало а как я сделал изменение все гамовер*(
 
Ответить
СообщениеТо бишь при сп корректно работало а как я сделал изменение все гамовер*(

Автор - Стася
Дата добавления - 08.02.2013 в 13:50
AlexM Дата: Суббота, 09.02.2013, 08:41 | Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1129 ±
Замечаний: 0% ±

Excel 2003
По куску кода, который вы показали ответ дать практически невозможно, это почти как вы бы показали
[vba]
Код
If Ch = "H" Or Ch = "h" Then
[/vba]
и задали тот же вопрос.

Если бы вы прикрепили файл, как требуют правила, то ответ дать просто.

Могу предположить, что у где-то "Н" (н) , а где-то "H" (h)



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеПо куску кода, который вы показали ответ дать практически невозможно, это почти как вы бы показали
[vba]
Код
If Ch = "H" Or Ch = "h" Then
[/vba]
и задали тот же вопрос.

Если бы вы прикрепили файл, как требуют правила, то ответ дать просто.

Могу предположить, что у где-то "Н" (н) , а где-то "H" (h)

Автор - AlexM
Дата добавления - 09.02.2013 в 08:41
Hugo Дата: Суббота, 09.02.2013, 13:45 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3691
Репутация: 790 ±
Замечаний: 0% ±

365
Так вроде прозрачнее, и меньше возможности ошибиться:

[vba]
Код
    Dim sh As Worksheet

     Set sh = ActiveWorkbook.Sheets("H")
     With ActiveWorkbook.Sheets("Учет")
         If LCase(Ch) = "h" Then
             For i = 1 To ActiveWorkbook.Sheets("Талон").Cells(7, 2)
                 sh.Cells(1, 2) = .Cells(r, 9)
                 sh.Cells(3, 2) = .Cells(r, 1)
                 sh.Cells(4, 2) = .Cells(r, 6) & " - " & .Cells(r, 5)
                 sh.Cells(5, 2) = i
                 sh.Cells(5, 3) = ActiveWorkbook.Sheets("Талон").Cells(7, 2)
                 sh.PrintOut copies:=1
             Next i
         End If
     End With
[/vba]


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
 
Ответить
СообщениеТак вроде прозрачнее, и меньше возможности ошибиться:

[vba]
Код
    Dim sh As Worksheet

     Set sh = ActiveWorkbook.Sheets("H")
     With ActiveWorkbook.Sheets("Учет")
         If LCase(Ch) = "h" Then
             For i = 1 To ActiveWorkbook.Sheets("Талон").Cells(7, 2)
                 sh.Cells(1, 2) = .Cells(r, 9)
                 sh.Cells(3, 2) = .Cells(r, 1)
                 sh.Cells(4, 2) = .Cells(r, 6) & " - " & .Cells(r, 5)
                 sh.Cells(5, 2) = i
                 sh.Cells(5, 3) = ActiveWorkbook.Sheets("Талон").Cells(7, 2)
                 sh.PrintOut copies:=1
             Next i
         End If
     End With
[/vba]

Автор - Hugo
Дата добавления - 09.02.2013 в 13:45
  • Страница 1 из 1
  • 1
Поиск:

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