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

Вход

Регистрация

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

 

= Мир MS Excel/Вставка значений вместо форматирования - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Вставка значений вместо форматирования (Макросы Sub)
Вставка значений вместо форматирования
kpk17 Дата: Вторник, 18.02.2014, 22:55 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 20
Репутация: 0 ±
Замечаний: 40% ±

Excel 2007
Подскажите пожалуйста, эти кодом я копирую данные из открытой книги в закрытую из ячеек Q46:Q53 в столбец А к примеру закрытой книги, таких диапазонов еще будет несколько, но хотя бы на этом примере хочу сделать.
Данный код вставляет целиком форматированные ячейки, я нужно только значение.
пытаюсь приписать значение Value, но выдает ошибки.

[vba]
Код
Sub Procedure_1()

Dim Исходная As Excel.Workbook, Конечная As Excel.Workbook
Dim lngLastRow As Long

Set Исходная = ActiveWorkbook
Set Конечная = Workbooks.Open("C:\старый комп\kpk\distr\Yandex\журнал крови.xls")

lngLastRow = Конечная.Worksheets(1).Cells(Конечная.Worksheets(1).Rows.Count, "A").End(xlUp).Row

'Если данных нет, то первой строкой будет строка 3.
If lngLastRow = 1 Then
lngLastRow = 3
Else
lngLastRow = lngLastRow + 1
End If

Исходная.Worksheets(1).Range("Q46:Q53").SpecialCells(2).Copy Конечная.Worksheets(1).Range("B" & lngLastRow)

End Sub
[/vba]


Сообщение отредактировал kpk17 - Вторник, 18.02.2014, 22:55
 
Ответить
СообщениеПодскажите пожалуйста, эти кодом я копирую данные из открытой книги в закрытую из ячеек Q46:Q53 в столбец А к примеру закрытой книги, таких диапазонов еще будет несколько, но хотя бы на этом примере хочу сделать.
Данный код вставляет целиком форматированные ячейки, я нужно только значение.
пытаюсь приписать значение Value, но выдает ошибки.

[vba]
Код
Sub Procedure_1()

Dim Исходная As Excel.Workbook, Конечная As Excel.Workbook
Dim lngLastRow As Long

Set Исходная = ActiveWorkbook
Set Конечная = Workbooks.Open("C:\старый комп\kpk\distr\Yandex\журнал крови.xls")

lngLastRow = Конечная.Worksheets(1).Cells(Конечная.Worksheets(1).Rows.Count, "A").End(xlUp).Row

'Если данных нет, то первой строкой будет строка 3.
If lngLastRow = 1 Then
lngLastRow = 3
Else
lngLastRow = lngLastRow + 1
End If

Исходная.Worksheets(1).Range("Q46:Q53").SpecialCells(2).Copy Конечная.Worksheets(1).Range("B" & lngLastRow)

End Sub
[/vba]

Автор - kpk17
Дата добавления - 18.02.2014 в 22:55
alex77755 Дата: Среда, 19.02.2014, 01:14 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 362
Репутация: 64 ±
Замечаний: 0% ±

попробуй как-то так:
[vba]
Код
Конечная.Worksheets(1).Range("B" & lngLastRow).Resize(7) = Исходная.Worksheets(1).Range("Q46:Q53").Value
[/vba]
только Range надо правильно задать


Могу помочь в VB6, VBA
Alex77755@mail.ru


Сообщение отредактировал alex77755 - Среда, 19.02.2014, 01:18
 
Ответить
Сообщениепопробуй как-то так:
[vba]
Код
Конечная.Worksheets(1).Range("B" & lngLastRow).Resize(7) = Исходная.Worksheets(1).Range("Q46:Q53").Value
[/vba]
только Range надо правильно задать

Автор - alex77755
Дата добавления - 19.02.2014 в 01:14
kpk17 Дата: Среда, 19.02.2014, 19:58 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 20
Репутация: 0 ±
Замечаний: 40% ±

Excel 2007
Цитата alex77755
попробуй как-то так:

Спасибо, работает!
 
Ответить
Сообщение
Цитата alex77755
попробуй как-то так:

Спасибо, работает!

Автор - kpk17
Дата добавления - 19.02.2014 в 19:58
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Вставка значений вместо форматирования (Макросы Sub)
  • Страница 1 из 1
  • 1
Поиск:

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