powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Помогите пожалуйста! EXCEL
5 сообщений из 5, страница 1 из 1
Помогите пожалуйста! EXCEL
    #34182179
asu2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне необходимо записать в открытом файле в ячейку А1 значение, из ячейки А2 закрытого файла, приэтом неоткрывая его.
Заранее спасибо!
...
Рейтинг: 0 / 0
Помогите пожалуйста! EXCEL
    #34182202
vkodor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Public Function Getvalue(path, File, sheet, ref)
Dim Arg As String
Arg = "'" & path & "[" & File & "]" & sheet & "'!" & Range(ref).Range("A1").Address(, , xlR1C1)
Getvalue = ExecuteExcel4Macro(Arg)
End Function

вызов

Sub f()
   cells( 1 , 1 ) = Getvalue("путь к файлу", "имя файла", "имя листа", "адресс ячейки")
end sub

...
Рейтинг: 0 / 0
Помогите пожалуйста! EXCEL
    #34182253
asu2007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибочки все сработало
...
Рейтинг: 0 / 0
Помогите пожалуйста! EXCEL
    #34182561
vallot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А у меня Getvalue= "Еггог 2023"
...
Рейтинг: 0 / 0
Помогите пожалуйста! EXCEL
    #34183498
vkodor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vallotА у меня Getvalue= "Еггог 2023"
#ССЫЛКА! - 2023


pashulkaНа самом деле всё просто и ответ уже частично заключён в самом вопросе. У Вас в извлекаемых ячейках находятся значения ошибки, и Вы сами это подтвердили в последнем посте.

Вот список ошибок и их коды :
#ПУСТО! - 2000
#ДЕЛ/0! -2007
#ЗНАЧ! - 2015
#ССЫЛКА! - 2023
#ИМЯ! - 2029
#ЧИСЛО! - 2036
#Н/Д! - 2042

Однако если в некоторых ячейках всё же находятся числовые значения, то Вы можете воспользоваться нижеприведённым кодом :

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
arg = "'" & temp & "\[MIS." & temp6 & "." & temp2 & ".xls]Teller1'!" & _
Range(a).Address(, , xlR1C1)

iTemp = ExecuteExcel4Macro(arg)

If Not IsError(iTemp) Then
   If IsNumeric(iTemp) Then
      GetValueFromClosed = GetValueFromClosed + iTemp
   End If
End If

Советы :
1) Уберите из Вашей пользовательской функции метод Activate. А вместо активации рабочего листа используйте инструкцию With или создайте об'ектную переменную с помощью инструкции Set
2) В начале программы поместите инструкцию On Error Resume Next

Примечание :
Я бы ещё добавил, что вот эта часть кода, довольно странная, так как в Вашем случае при запуске функции m всегда будет равно 2, во всяком случае если исходить из текста Вашей пользовательской функции. Конечно можно предположить, что переменная m у Вас об'явлена на уровне модуля, но повторюсь, ничто в коде на это не указывает.

m = m + 2
temp6 = Cells(m, 1).Value
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Помогите пожалуйста! EXCEL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]