Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.03.2010, 15:36   #1
Pashok1
Новичок
Джуниор
 
Регистрация: 04.03.2010
Сообщений: 2
По умолчанию Проблемы с GetValue

Столкнулся с проблемой.
Использую функцию GetValue для того, чтобы достать значения из файла и записать в дургой файл.

в указанных примерах используют такую строку
Код:
arg = "'" & path & "[" & file & "]" & sheet & "'!" & _
Range(ref).Range("A1").Address(, , xlR1C1)
мне выдает ошибку на Range(ref)
удаляю этот параметр - работает, но при выводе значений дает 0 или #ССЫЛКА

Может кто поможет разобраться?
Pashok1 вне форума Ответить с цитированием
Старый 04.03.2010, 15:45   #2
The_Prist
Участник клуба
 
Аватар для The_Prist
 
Регистрация: 17.07.2009
Сообщений: 1,088
По умолчанию

Так ref - это переменная. Она должна быть типа String(это предположение) и ей должно присваиваться имя либо адрес какого-то диапазона.
С выложенным ма-а-а-а-леньким кусочком кода сложно сказать точнее...
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru
The_Prist вне форума Ответить с цитированием
Старый 04.03.2010, 15:55   #3
Pashok1
Новичок
Джуниор
 
Регистрация: 04.03.2010
Сообщений: 2
По умолчанию

так... С рэфом разобрался
вот полный код проги

Код:
Private Function GetValue(path, file, sheet, ref)
' Retrieves a value from a closed workbook
Dim arg As String

' Make sure the file exists
If Dir(p & Filename2) = "" Then
GetValue = "File Not Found"
Exit Function
End If

' Create the argument
arg = "'" & path & "[" & file & "]" & sheet & "'!" & Range(ref).Range("A1").Address(, , xlR1C1)

' Execute an XLM macro
GetValue = ExecuteExcel4Macro(arg)
End Function

Sub 555()

p = "C:\"
s = "1"
f = "zzz.xls"

Application.ScreenUpdating = False
For r = 1 To 50
For c = 1 To 12
a = Cells(r, c).Address
Cells(r, c) = GetValue(p, f, s, a)
Next c
Next r
Application.ScreenUpdating = True
End Sub
Выдает #ССЫЛКА во всех заполняемых ячейках
Pashok1 вне форума Ответить с цитированием
Старый 04.03.2010, 19:27   #4
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Код:
Private Function GetValue(path As String, file As String, sheet As String, ref As String)
' Retrieves a value from a closed workbook
Dim arg As String

' Make sure the file exists
If Dir(path & file) = "" Then
GetValue = "File Not Found"
Exit Function
End If

' Create the argument
arg = "'" & path & "[" & file & "]" & sheet & "'!" & Range(ref).Address(ReferenceStyle:=xlR1C1)

' Execute an XLM macro
GetValue = ExecuteExcel4Macro(arg)
End Function

Sub а555() ' С цифры не может имя процедуры начинаться
Dim p As String
Dim f As String
Dim s As String
Dim a As String


p = "C:\"
s = "Лист1"    'Имя  листа
f = "zzz.xls"

Application.ScreenUpdating = False
For r = 1 To 50
For c = 1 To 12
a = Cells(r, c).Address
Cells(r, c) = GetValue(p, f, s, a)

h = GetValue(p, f, s, a)

Next c
Next r
Application.ScreenUpdating = True
End Sub
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
проблемы с запуском С alex(21) Общие вопросы C/C++ 15 25.10.2009 13:29
Проблемы с Visual c++ dampirik Visual C++ 8 16.08.2009 16:13
Проблемы с GLScene!!! hoza_syl Gamedev - cоздание игр: Unity, OpenGL, DirectX 7 11.02.2009 03:08
проблемы с IE xakzona Помощь студентам 1 16.12.2008 21:53