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

Вход

Регистрация

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

 

= Мир MS Excel/Запуск макроса после выделения строк - Страница 2 - Мир MS Excel

Старая форма входа
  • Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Запуск макроса после выделения строк (Формулы/Formulas)
Запуск макроса после выделения строк
Stormy Дата: Пятница, 24.02.2017, 16:59 | Сообщение № 21
Группа: Проверенные
Ранг: Обитатель
Сообщений: 357
Репутация: 12 ±
Замечаний: 0% ±

Excel 2010
Pelena,
Wasilich,
[offtop]Угу, 7 пятниц :D [/offtop]

Сейчас опробую.


Место для рекламы.
 
Ответить
СообщениеPelena,
Wasilich,
[offtop]Угу, 7 пятниц :D [/offtop]

Сейчас опробую.

Автор - Stormy
Дата добавления - 24.02.2017 в 16:59
Stormy Дата: Суббота, 25.02.2017, 14:44 | Сообщение № 22
Группа: Проверенные
Ранг: Обитатель
Сообщений: 357
Репутация: 12 ±
Замечаний: 0% ±

Excel 2010
Wasilich,
Добрый день.
Почему-то при копировании этого кода в рабочую книгу , данные с листа сверки размещаются на непонятном расстояние от друг друга.
Еще проблема. Чуть-чуть подредактировал макрос, чтобы копировал данные с накладных и вставлял как значения ( без формул).
Для сверки это сработало, а где править то что берется с листа накладные?

[vba]
Код
Sub пробник()
   Dim iz As Range, ad$, ns&, ws&, ps&, cl&, ok&, dt As Date
   ad = Selection.Address 'адрес диапазона
   ns = Range(Selection.Address).Row 'начальная (1-я) строка диапазона
   ws = Range(Selection.Address).Rows.Count 'всего строк
   ps = Range(Selection.Address).Row + Range(Selection.Address).Rows.Count - 1 ' последняя
   cl = ActiveSheet.UsedRange.Columns.Count 'пледний столбец в накладные
   dt = Cells(ps, "A")
  ' cl = Range(ad).Columns.Count ' последний столбец выбранного диапазона
   Sheets("Печать").Range("A4:AM100").MergeCells = False 'снимаем объединение ячеек
   Sheets("Печать").Range("A4:AM100").ClearContents  'очищаеи ячейки
   Sheets("Печать").Range("A4:AM100").Borders.LineStyle = xlNone 'удаляем обрамление
   Sheets("Печать").Range("A4:AM100").Interior.ColorIndex = xlNone 'удаляем цвета
   
   Range(Cells(ns, "A"), Cells(ps, cl)).Copy Sheets("Печать").Range("A4") ' копируем диапазон
   
   With Sheets("Сверка")
    ps = .Range("C" & Rows.Count).End(xlUp).Row
    ok = .UsedRange.Columns.Count 'последний столбец
    Set iz = .Range("B2:C" & ps)
    iz.Copy Sheets("Печать").Cells(2, cl) 'копируем В и С
    Range(.Cells(2, ok), .Cells(ps, ok)).Copy 'копируем последний
    Sheets("Печать").Cells(2, cl + 2).PasteSpecial Paste:=xlPasteAllUsingSourceTheme, Operation:=xlNone _
        , SkipBlanks:=False, Transpose:=False
End With
   Sheets("Печать").Select
   Range(Cells(4, cl + 2), Cells(ps, cl + 2)).Borders.Weight = xlThin 'обрамляе столбец даты
   Cells(1, cl + 2).Select
End Sub
[/vba]


Место для рекламы.
 
Ответить
СообщениеWasilich,
Добрый день.
Почему-то при копировании этого кода в рабочую книгу , данные с листа сверки размещаются на непонятном расстояние от друг друга.
Еще проблема. Чуть-чуть подредактировал макрос, чтобы копировал данные с накладных и вставлял как значения ( без формул).
Для сверки это сработало, а где править то что берется с листа накладные?

[vba]
Код
Sub пробник()
   Dim iz As Range, ad$, ns&, ws&, ps&, cl&, ok&, dt As Date
   ad = Selection.Address 'адрес диапазона
   ns = Range(Selection.Address).Row 'начальная (1-я) строка диапазона
   ws = Range(Selection.Address).Rows.Count 'всего строк
   ps = Range(Selection.Address).Row + Range(Selection.Address).Rows.Count - 1 ' последняя
   cl = ActiveSheet.UsedRange.Columns.Count 'пледний столбец в накладные
   dt = Cells(ps, "A")
  ' cl = Range(ad).Columns.Count ' последний столбец выбранного диапазона
   Sheets("Печать").Range("A4:AM100").MergeCells = False 'снимаем объединение ячеек
   Sheets("Печать").Range("A4:AM100").ClearContents  'очищаеи ячейки
   Sheets("Печать").Range("A4:AM100").Borders.LineStyle = xlNone 'удаляем обрамление
   Sheets("Печать").Range("A4:AM100").Interior.ColorIndex = xlNone 'удаляем цвета
   
   Range(Cells(ns, "A"), Cells(ps, cl)).Copy Sheets("Печать").Range("A4") ' копируем диапазон
   
   With Sheets("Сверка")
    ps = .Range("C" & Rows.Count).End(xlUp).Row
    ok = .UsedRange.Columns.Count 'последний столбец
    Set iz = .Range("B2:C" & ps)
    iz.Copy Sheets("Печать").Cells(2, cl) 'копируем В и С
    Range(.Cells(2, ok), .Cells(ps, ok)).Copy 'копируем последний
    Sheets("Печать").Cells(2, cl + 2).PasteSpecial Paste:=xlPasteAllUsingSourceTheme, Operation:=xlNone _
        , SkipBlanks:=False, Transpose:=False
End With
   Sheets("Печать").Select
   Range(Cells(4, cl + 2), Cells(ps, cl + 2)).Borders.Weight = xlThin 'обрамляе столбец даты
   Cells(1, cl + 2).Select
End Sub
[/vba]

Автор - Stormy
Дата добавления - 25.02.2017 в 14:44
Wasilich Дата: Суббота, 25.02.2017, 16:25 | Сообщение № 23
Группа: Друзья
Ранг: Старожил
Сообщений: 1232
Репутация: 326 ±
Замечаний: 0% ±

2003
при копировании этого кода в рабочую книгу , данные с листа сверки размещаются на непонятном расстояние от друг друга
А в посте 9, это была не рабочая книга?
Так мы так будем до бесконечности гадать. Опять, что то не совпадает, по колонкам и по строкам.
 
Ответить
Сообщение
при копировании этого кода в рабочую книгу , данные с листа сверки размещаются на непонятном расстояние от друг друга
А в посте 9, это была не рабочая книга?
Так мы так будем до бесконечности гадать. Опять, что то не совпадает, по колонкам и по строкам.

Автор - Wasilich
Дата добавления - 25.02.2017 в 16:25
Stormy Дата: Суббота, 25.02.2017, 17:09 | Сообщение № 24
Группа: Проверенные
Ранг: Обитатель
Сообщений: 357
Репутация: 12 ±
Замечаний: 0% ±

Excel 2010
Вроде разобрался.


Место для рекламы.
 
Ответить
СообщениеВроде разобрался.

Автор - Stormy
Дата добавления - 25.02.2017 в 17:09
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Запуск макроса после выделения строк (Формулы/Formulas)
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск:

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