Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: вставить примугольный кусок из вооон того файла мне на страницу
 
 автор: puzo   (22.09.2011 в 16:48)   личное сообщение
 
 

день добрый!
есть файл где-то sfile, до него путь spath
надо выковырять в наш файл кусок размером А91:AP106 при условии, что К91<>""
если делать
For i = 91 To 106
For j = 1 To 42
Cells(i - 90, j) = "='" & spath & "[" & sFile & "]" & "ТЗ'!R" & Trim(Str(i)) & "C" & Trim(Str(j))
Cells(i - 90, j).Value = Cells(i - 90, j).Value
Next j
Next i
то получается ооооочень долго ( файл тот - на серваке, не на нашем компе )
я думаю, что через Range должно быстрее работать, раз он берёт кусок целиком. можно ли ?
попробовал вот так :
Set wb = GetObject(spath & sFile)

Set rRomb = wb.Sheets("ТЗ").Range("A91:AP106")
wb.Close (False)
Range("A1").Value = rRomb.Value ' это я хочу в моём файле уже этот рейндж вставить
не работает, ругается.

что не так написано или на какой форум мне идти спрашивать с такими вопросами ?

  Ответить  
 
 автор: kot_k_k   (22.09.2011 в 17:26)   личное сообщение
 
 

сорь, а можно програмно:
- открыть этот файл
- выделить область
- скопировать
- вставить в нужное место ?

  Ответить  
 
 автор: puzo   (22.09.2011 в 17:28)   личное сообщение
 
 

не, это просто ексель+вба (
сорри, наверно не в том форуме запостил.

так я так и хочу : открыть, выделить область путём range , скопировать это в переменную типа range
f потом вставить у себя на листочек.
повторить эн раз, пока не кончатся ТЗ .

  Ответить  
 
 автор: snipe   (22.09.2011 в 17:51)   личное сообщение
 
 

range(cells(i1,j1),cells(i2,j2))

  Ответить  
 
 автор: Анатолий (Киев)   (22.09.2011 в 19:18)   личное сообщение
 
 

Не получается, т.к. вы рано делаете wb.Close

  Ответить  
 
 автор: puzo   (22.09.2011 в 20:09)   личное сообщение
 
 

2 snipe - это опять перебирать все и и жы ? не хочется. хочется какрас без них. с циклом же получилось. н о медленно
2 анатолий - да ? нам же wb не нужен. мы же рРомб создали. у нас есть виртуальная табличка, которую создал рРомб.
а Range("A1").Value = rRomb.Value - так это я хочу присвоить значение рРомб-а в мой лист в моём файле начиная с ячейки А1.
спасибо, всё равно попробую.

  Ответить  
 
 автор: Анатолий (Киев)   (23.09.2011 в 10:32)   личное сообщение
 
 


да ? нам же wb не нужен. мы же рРомб создали. у нас есть виртуальная табличка, которую создал рРомб.


Еще как нужен! Объект rRomb, это просто ссылка на диапазон, у которого есть родителель -лист "ТЗ", у которого есть родитель - книга. А вы родителей убили!
Если вас не интересует форматирование ячеек, а только значения, то можно иначе:

Dim v as Variant
v = wb.Sheets("ТЗ").Range("A91:AP106").Value
wb.Close (False)

...

Range("A1").Value = v

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList