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

Вход

Регистрация

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

 

= Мир MS Excel/Копирование данных без форматирования из другого файла - Мир MS Excel

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

Добрый день.

Необходимо скопировать значения из другого файлика, не изменяя форматирование текущего при вставке данных.

[vba]
Код
    Dim wb As Workbook, ws As Worksheet
    Set ws = ActiveSheet
    Set wb = GetObject("D:\файлик.xlsm"): If wb Is Nothing Then Exit Sub
        wb.Worksheets("Лист_1").Range("$A$2:$A$101").Copy ws.Range("B51")
        wb.Worksheets("Лист_2").Range("$B$2:$B$101").Copy ws.Range("D51")
        wb.Worksheets("Лист_3").Range("$C$2:$C$101").Copy ws.Range("E51")
    wb.Close False
[/vba]

Вот такой вариант копирует вместе с форматированием, а при попытке поменять на ws.Range("B51").Value выдаёт ошибку.
Спасибо.
К сообщению приложен файл: kniga1.xlsm (10.5 Kb) · kniga2.xlsm (17.4 Kb)


Сообщение отредактировал Alex2354 - Вторник, 23.01.2024, 13:35
 
Ответить
СообщениеДобрый день.

Необходимо скопировать значения из другого файлика, не изменяя форматирование текущего при вставке данных.

[vba]
Код
    Dim wb As Workbook, ws As Worksheet
    Set ws = ActiveSheet
    Set wb = GetObject("D:\файлик.xlsm"): If wb Is Nothing Then Exit Sub
        wb.Worksheets("Лист_1").Range("$A$2:$A$101").Copy ws.Range("B51")
        wb.Worksheets("Лист_2").Range("$B$2:$B$101").Copy ws.Range("D51")
        wb.Worksheets("Лист_3").Range("$C$2:$C$101").Copy ws.Range("E51")
    wb.Close False
[/vba]

Вот такой вариант копирует вместе с форматированием, а при попытке поменять на ws.Range("B51").Value выдаёт ошибку.
Спасибо.

Автор - Alex2354
Дата добавления - 23.01.2024 в 12:50
doober Дата: Вторник, 23.01.2024, 14:08 | Сообщение № 2
Группа: Друзья
Ранг: Ветеран
Сообщений: 944
Репутация: 323 ±
Замечаний: 0% ±

Excel 2010
Добрый.так должно сработать[vba]
Код
    Dim wb As Workbook, ws As Worksheet
    Set ws = ActiveSheet
    Set wb = GetObject("D:\файлик.xlsm"): If wb Is Nothing Then Exit Sub
        ws.Range("B51").resize(100,1)=wb.Worksheets("Лист_1").Range("$A$2:$A$101").value
        ws.Range("D51").resize(100,1)=wb.Worksheets("Лист_2").Range("$B$2:$B$101").value
        ws.Range("E51").resize(100,1)=wb.Worksheets("Лист_3").Range("$C$2:$C$101").value
    wb.Close False
[/vba]


 
Ответить
СообщениеДобрый.так должно сработать[vba]
Код
    Dim wb As Workbook, ws As Worksheet
    Set ws = ActiveSheet
    Set wb = GetObject("D:\файлик.xlsm"): If wb Is Nothing Then Exit Sub
        ws.Range("B51").resize(100,1)=wb.Worksheets("Лист_1").Range("$A$2:$A$101").value
        ws.Range("D51").resize(100,1)=wb.Worksheets("Лист_2").Range("$B$2:$B$101").value
        ws.Range("E51").resize(100,1)=wb.Worksheets("Лист_3").Range("$C$2:$C$101").value
    wb.Close False
[/vba]

Автор - doober
Дата добавления - 23.01.2024 в 14:08
Alex2354 Дата: Вторник, 23.01.2024, 15:42 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 0% ±

Спасибо. Получилось.
 
Ответить
СообщениеСпасибо. Получилось.

Автор - Alex2354
Дата добавления - 23.01.2024 в 15:42
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Копирование данных без форматирования из другого файла (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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