Страницы: 1
RSS
Переменная Range
 
Всем добрый вечер,    
 
Оператором Set передаю переменной TempOfRange диапазон с листа одной книги:  
 
Set TempOfRange = Book.SheetS(1).Range(Cells(1,1).Address,Cells(7,19).Address)  
 
Есть ли простой способ передать значения в переменной TempOfRange диапазону на другом листе другой книги.  
 
Всегда благодарен,  
 
Владимир.
 
Дима спасибо за отклик,  
 
Как передать переменной TempOfRange значения мне понятно.  
Вопрос в том как вернуть эти значения в другой диапазон, на другом листе, другой книги.
 
Спасибо Дима,  
 
Понял свою ошибку - Set нужен только для переменной.
 
{quote}{login=VovaK}{date=01.10.2009 10:51}{thema=}{post}Понял свою ошибку - Set нужен только для переменной.{/post}{/quote}  
 
Set нужен только при присвоении значения ОБЪЕКТУ (например, объектам типа Range, Worksheet, Workbook и т.п.)  
 
При присвоении значений обычным переменным (текстовым, числовым и т.п., в т.ч. массивам) Set не используется.
 
Привет Игорь,  
Я к тому, что понять не мог, пишу:  
 
Set ThisWorkBook.Sheet(1).Range(Cells(1,1),Cells(7,19)).Value = TempOfRange.Value  
 
не работает,    
 
а без Set работает.    
 
Игорь ты про правый отступ в ListBox не знаешь? (см post "Правый отступ ListBox")
 
{quote}{login=VovaK}{date=01.10.2009 11:07}{thema=}{post} пишу:  
Set ThisWorkBook.Sheet(1).Range(Cells(1,1),Cells(7,19)).Value = TempOfRange.Value{/post}{/quote}  
Сначала пишем Set, затем ЧТО устанавливаем, затем чему оно равно
 
{quote}{login=}{date=01.10.2009 11:17}{thema=Re: }{post}{quote}{login=VovaK}{date=01.10.2009 11:07}{thema=}{post} пишу:  
Set ThisWorkBook.Sheet(1).Range(Cells(1,1),Cells(7,19)).Value = TempOfRange.Value{/post}{/quote}  
Сначала пишем Set, затем ЧТО устанавливаем, затем чему оно равно{/post}{/quote}  
 
Прямо строгий учитель, извини если зацепило...
 
Все-таки куда проще нажать F1 на слове Set и узнать, что присваивается ссылка(!) на объект(!). И посмотреть пример:  
Dim YourObject, MyObject, MyStr  
Set MyObject = YourObject    ' Assign object reference.  
' MyObject and YourObject refer to the same object.  
YourObject.Text = "Hello World"    ' Initialize property.  
MyStr = MyObject.Text    ' Returns "Hello World".  
 
 
.Value - это уже property ему нельзя назначить ссылку.  
можно так  
Set MyObject = TempOfRange.Value  
или так  
Set  MyObject = ThisWorkBook.Sheet(1).Range(Cells(1,1),Cells(7,19)).Value    
 
будет ссылка на значение.  
бессмысленная и беспощадная :)
Bite my shiny metal ass!      
 
Ну совсем правильно будет так:  
"что присваивается ссылка(!) на объект или на проперти"  
Сначала решил опустить.  
А потом решил, что кто-нибудь обязательно укажет на это :)
Bite my shiny metal ass!      
Страницы: 1
Читают тему
Наверх