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

Вход

Регистрация

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

 

= Мир MS Excel/Сдвиг диапазона - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Сдвиг диапазона
Guslykov Дата: Воскресенье, 06.09.2015, 17:06 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 32
Репутация: 0 ±
Замечаний: 20% ±

Excel 2003
Здравствуйте!
У меня такая проблема, есть массив необходимо его сдвинуть но макрос ругается, а почему понять не могу. Может кто подскажет. Файл прилагается.
К сообщению приложен файл: 1201721.xls (24.0 Kb)
 
Ответить
СообщениеЗдравствуйте!
У меня такая проблема, есть массив необходимо его сдвинуть но макрос ругается, а почему понять не могу. Может кто подскажет. Файл прилагается.

Автор - Guslykov
Дата добавления - 06.09.2015 в 17:06
Gustav Дата: Воскресенье, 06.09.2015, 17:24 | Сообщение № 2
Группа: Админы
Ранг: Участник клуба
Сообщений: 2877
Репутация: 1217 ±
Замечаний: ±

начинал с Excel 4.0, видел 2.1
Ругается, потому что у диапазона (Range) нет метода Paste
[vba]
Код
Private Sub CommandButton1_Click()
Worksheets("Лист1").Range(Cells(2, 4), Cells(4, 12)).Copy Worksheets("Лист1").Range(Cells(2, 14), Cells(4, 22))
'Worksheets("Лист1").Range(Cells(2, 14), Cells(4, 22)).Paste    
End Sub
[/vba]
У диапазона есть только PasteSpecial, а Paste есть у рабочего листа, например, Worksheets("Лист1").Paste.


МОИ: Ник, Tip box: 41001663842605

Сообщение отредактировал Gustav - Воскресенье, 06.09.2015, 17:28
 
Ответить
СообщениеРугается, потому что у диапазона (Range) нет метода Paste
[vba]
Код
Private Sub CommandButton1_Click()
Worksheets("Лист1").Range(Cells(2, 4), Cells(4, 12)).Copy Worksheets("Лист1").Range(Cells(2, 14), Cells(4, 22))
'Worksheets("Лист1").Range(Cells(2, 14), Cells(4, 22)).Paste    
End Sub
[/vba]
У диапазона есть только PasteSpecial, а Paste есть у рабочего листа, например, Worksheets("Лист1").Paste.

Автор - Gustav
Дата добавления - 06.09.2015 в 17:24
Guslykov Дата: Воскресенье, 06.09.2015, 17:42 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 32
Репутация: 0 ±
Замечаний: 20% ±

Excel 2003
Gustav, Спасибо Вам большое. все оказывается так просто. СПАСИБО еще раз
 
Ответить
СообщениеGustav, Спасибо Вам большое. все оказывается так просто. СПАСИБО еще раз

Автор - Guslykov
Дата добавления - 06.09.2015 в 17:42
Udik Дата: Воскресенье, 06.09.2015, 17:54 | Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 1588
Репутация: 192 ±
Замечаний: 0% ±

Excel 2016 х 64
то же самое с with
[vba]
Код

Private Sub CommandButton1_Click()
With Worksheets("Лист1")
.Range(Cells(2, 4), Cells(4, 12)).Copy .Range("N2")
End With
End Sub

[/vba]
[p.s.] для целевого диапазона достаточно указать левую верхнюю ячейку


вот вам барабан
яд 41001231307558 wm R419131876897
udik1968@gmail.com


Сообщение отредактировал Udik - Воскресенье, 06.09.2015, 17:57
 
Ответить
Сообщението же самое с with
[vba]
Код

Private Sub CommandButton1_Click()
With Worksheets("Лист1")
.Range(Cells(2, 4), Cells(4, 12)).Copy .Range("N2")
End With
End Sub

[/vba]
[p.s.] для целевого диапазона достаточно указать левую верхнюю ячейку

Автор - Udik
Дата добавления - 06.09.2015 в 17:54
RAN Дата: Воскресенье, 06.09.2015, 19:43 | Сообщение № 5
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010

Не знаю, что надо, но, в любом случае, точек либо мало, либо много. :)


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщение
Не знаю, что надо, но, в любом случае, точек либо мало, либо много. :)

Автор - RAN
Дата добавления - 06.09.2015 в 19:43
Udik Дата: Воскресенье, 06.09.2015, 20:14 | Сообщение № 6
Группа: Друзья
Ранг: Старожил
Сообщений: 1588
Репутация: 192 ±
Замечаний: 0% ±

Excel 2016 х 64
точек либо мало, либо много


Э, чего-то не понял. У меня всё работает.
К сообщению приложен файл: temp.xls (31.0 Kb)


вот вам барабан
яд 41001231307558 wm R419131876897
udik1968@gmail.com
 
Ответить
Сообщение
точек либо мало, либо много


Э, чего-то не понял. У меня всё работает.

Автор - Udik
Дата добавления - 06.09.2015 в 20:14
RAN Дата: Воскресенье, 06.09.2015, 20:48 | Сообщение № 7
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Или
[vba]
Код
Range(Cells(2, 4), Cells(4, 12)).Copy Range("N2")
[/vba]
или
[vba]
Код
.Range(.Cells(2, 4), .Cells(4, 12)).Copy Range("N2")
[/vba]
или
[vba]
Код
.Range(.Cells(2, 4), .Cells(4, 12)).Copy .Range("N2")
[/vba]
или
[vba]
Код
Range(Cells(2, 4), Cells(4, 12)).Copy .Range("N2")
[/vba]
А это
[vba]
Код
.Range(Cells(2, 4), Cells(4, 12)).Copy .Range("N2")
[/vba]
работает до случая


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеИли
[vba]
Код
Range(Cells(2, 4), Cells(4, 12)).Copy Range("N2")
[/vba]
или
[vba]
Код
.Range(.Cells(2, 4), .Cells(4, 12)).Copy Range("N2")
[/vba]
или
[vba]
Код
.Range(.Cells(2, 4), .Cells(4, 12)).Copy .Range("N2")
[/vba]
или
[vba]
Код
Range(Cells(2, 4), Cells(4, 12)).Copy .Range("N2")
[/vba]
А это
[vba]
Код
.Range(Cells(2, 4), Cells(4, 12)).Copy .Range("N2")
[/vba]
работает до случая

Автор - RAN
Дата добавления - 06.09.2015 в 20:48
Udik Дата: Воскресенье, 06.09.2015, 20:55 | Сообщение № 8
Группа: Друзья
Ранг: Старожил
Сообщений: 1588
Репутация: 192 ±
Замечаний: 0% ±

Excel 2016 х 64

работает до случая

А ну да :) точки перед Cells лучше поставить.
[p.s.]чем отличается 2 и 3 вариант не уловил %) А первый, по-моему, тоже может не с того листа считать.


вот вам барабан
яд 41001231307558 wm R419131876897
udik1968@gmail.com


Сообщение отредактировал Udik - Воскресенье, 06.09.2015, 21:03
 
Ответить
Сообщение

работает до случая

А ну да :) точки перед Cells лучше поставить.
[p.s.]чем отличается 2 и 3 вариант не уловил %) А первый, по-моему, тоже может не с того листа считать.

Автор - Udik
Дата добавления - 06.09.2015 в 20:55
Udik Дата: Воскресенье, 06.09.2015, 21:23 | Сообщение № 9
Группа: Друзья
Ранг: Старожил
Сообщений: 1588
Репутация: 192 ±
Замечаний: 0% ±

Excel 2016 х 64
Как меня под вечер плющит :) Второй и третий различаются маленькой точкой перед целевым Range


вот вам барабан
яд 41001231307558 wm R419131876897
udik1968@gmail.com
 
Ответить
СообщениеКак меня под вечер плющит :) Второй и третий различаются маленькой точкой перед целевым Range

Автор - Udik
Дата добавления - 06.09.2015 в 21:23
ikki Дата: Воскресенье, 06.09.2015, 23:04 | Сообщение № 10
Группа: Друзья
Ранг: Старожил
Сообщений: 1906
Репутация: 504 ±
Замечаний: 0% ±

Excel 2003, 2010
не, удалил


помощь по Excel и VBA
ikki@fxmail.ru, icq 592842413, skype alex.ikki


Сообщение отредактировал ikki - Воскресенье, 06.09.2015, 23:07
 
Ответить
Сообщениене, удалил

Автор - ikki
Дата добавления - 06.09.2015 в 23:04
  • Страница 1 из 1
  • 1
Поиск:

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