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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.02.2017, 07:03   #1
СтаСС
Пользователь
 
Регистрация: 12.02.2017
Сообщений: 87
По умолчанию Ошибка в завершении макроса

Обращаюсь к специалистам (я точно не из их числа) у меня не получается дописать макрос...
Задача макроса скопировать данные с разных ячеек одного листа на 4-строку второго листа (до этого момента макрос работает) а в конце нужно чтоб макрос скопировал эту 4-строку на 3-лист в первую свободную строку (записи ведутся сверху вниз - допустим строки 1,2,3 заняты - значит вставить на 4-строку)
и вот здесь у меня какая-то ошибка
Код:
...
...
Range("A4:AU4").Select
    Selection.Copy
    Sheets("3").Select
 Range(.Range("A" & .Rows.Count).End(xlDown), .Range("AU4" & Rows.Count).End(xlDown)).Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
 
 With Application
 .CutCopyMode = False
 .ScreenUpdating = True
 End With
 End Sub

Последний раз редактировалось СтаСС; 17.02.2017 в 07:28.
СтаСС вне форума Ответить с цитированием
Старый 17.02.2017, 07:32   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

попробуйте так: (вместо всего приведенного вами кода)
Код:
Range("A4:AU4").Copy Sheets("3").Range("A" & Sheets("3").Rows.Count).End(xlUp).offset(1)
EducatedFool вне форума Ответить с цитированием
Старый 17.02.2017, 07:38   #3
СтаСС
Пользователь
 
Регистрация: 12.02.2017
Сообщений: 87
По умолчанию

Yessss!
EducatedFool большое спасибо! Просто огромное а то я сам три часа голову ломал))
СтаСС вне форума Ответить с цитированием
Старый 17.02.2017, 07:57   #4
СтаСС
Пользователь
 
Регистрация: 12.02.2017
Сообщений: 87
По умолчанию

Подскажите еще пожалуйста как исправить чтоб вставляло только значение - не меняя конечного форматирования у меня уже голова совсем не варит ))
ОТБОЙ )) Разобрался.. вопрос окончательно решен.. еще раз СПАСИБО!

Последний раз редактировалось СтаСС; 17.02.2017 в 08:25.
СтаСС вне форума Ответить с цитированием
Старый 08.03.2017, 16:05   #5
СтаСС
Пользователь
 
Регистрация: 12.02.2017
Сообщений: 87
По умолчанию

Объясните что я делаю не так?
В задумке с листа1 копируем строку 6 и вставляем ее на первую свободную на листе2 сохранив значение и исходное форматирование (плюс активируются ячейки a1 на обоих листах)... вот код:
Код HTML:
    Sheets("1").Select
    Range("6:6").Copy Sheets("2").Range("A" & Sheets("2").Rows.Count).End(xlUp).Offset(1)
    Rows("6:6").Select
    Selection.Copy
    Sheets("2").Select
    Selection.PasteSpecial Paste:=xlPasteAllUsingSourceTheme, Operation:=xlNone _
        , SkipBlanks:=False, Transpose:=False
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
   Range("A1").Select
   Sheets("1").Select
   Range("A1").Select
вобщем я что то такое понаписал а на деле получается полная ерунда.. хелп ми)
Вложения
Тип файла: xls Книга1.xls (40.5 Кб, 10 просмотров)

Последний раз редактировалось СтаСС; 08.03.2017 в 16:07.
СтаСС вне форума Ответить с цитированием
Старый 08.03.2017, 17:34   #6
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Код:
Sheets("3").Range("A" & Sheets("3").Rows.Count).End(xlUp).offset(1).resize(1,47).value = Range("A4:AU4").value
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 08.03.2017, 17:44   #7
СтаСС
Пользователь
 
Регистрация: 12.02.2017
Сообщений: 87
По умолчанию

IgorGO, сделал так
Цитата:
Sub t()
Sheets("2").Range("A" & Sheets("2").Rows.Count).End(xlUp).O ffset(1).Resize(1, 47).Value = Range("6:6").Value
End Sub
уже намного лучше но форматирование не сохраняет(
СтаСС вне форума Ответить с цитированием
Старый 08.03.2017, 17:48   #8
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Цитата:
Подскажите еще пожалуйста как исправить чтоб вставляло только значение - не меняя конечного форматирования
EducatedFool, написал Вам вариант, который копирует данные с форматами
а что нужно-то?
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 08.03.2017, 17:50   #9
СтаСС
Пользователь
 
Регистрация: 12.02.2017
Сообщений: 87
По умолчанию

то было старое.. а вот что сейчас нужно пост№5
Цитата:
Сообщение от СтаСС Посмотреть сообщение
Объясните что я делаю не так?
В задумке с листа1 копируем строку 6 и вставляем ее на первую свободную на листе2 сохранив значение и исходное форматирование (плюс активируются ячейки a1 на обоих листах)... вот код:
Код HTML:
    Sheets("1").Select
    Range("6:6").Copy Sheets("2").Range("A" & Sheets("2").Rows.Count).End(xlUp).Offset(1)
    Rows("6:6").Select
    Selection.Copy
    Sheets("2").Select
    Selection.PasteSpecial Paste:=xlPasteAllUsingSourceTheme, Operation:=xlNone _
        , SkipBlanks:=False, Transpose:=False
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
   Range("A1").Select
   Sheets("1").Select
   Range("A1").Select
вобщем я что то такое понаписал а на деле получается полная ерунда.. хелп ми)
СтаСС вне форума Ответить с цитированием
Старый 08.03.2017, 17:54   #10
СтаСС
Пользователь
 
Регистрация: 12.02.2017
Сообщений: 87
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
EducatedFool, написал Вам вариант, который копирует данные с форматами
а что нужно-то?
да там с форматом но копирует не значение (
СтаСС вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка в открытии макроса ZHDN Microsoft Office Excel 3 28.11.2011 12:36
Ошибка макроса flyinsky Microsoft Office Excel 3 16.06.2011 11:30
Ошибка при завершении программы _-Re@l-_ Общие вопросы Delphi 2 01.09.2010 21:32
выполнение макроса по завершении редактирования конкретной ячейки Обыватель Microsoft Office Excel 2 20.05.2010 11:52
ошибка макроса maxillion Microsoft Office Excel 6 15.05.2010 02:13