Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Использование данных с разных листов книги Excel / 7 сообщений из 7, страница 1 из 1
31.10.2011, 18:42
    #37505796
КД
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование данных с разных листов книги Excel
Есть xls-файл с формулами расчета "Расчеты". Формулы имеют вид:
=ЕСЛИ(И([Общая.xls]Таблица!$C$44<=B15;B15<=[Общая.xls]Таблица!$E$44);0,84*[Общая.xls]Таблица!$K$44/100*B15;
ЕСЛИ(И([Общая.xls]Таблица!$C$45<B15;B15<=[Общая.xls]Таблица!$E$45);0,84*[Общая.xls]Таблица!$K$45/100*B15;"Значение B15 вне интервала!"))
т.е. идет ссылка на лист "Таблица" в другом файле "Общая".

В этом же файле "Общая" есть другой лист "Таблица новая". Попытка переименовать листы "Таблица" -> "Таблица старая" и "Таблица новая" -> "Таблица" с целью использования в формулах расчета данных с другого листа к успеху не привела, т.к. при переименовании формула в "Расчеты" приобрела вид:
=ЕСЛИ(И([Общая.xls]Таблица старая!$C$44<=B15;B15<=[Общая.xls]Таблица старая!$E$44);0,84*[Общая.xls]Таблица старая!$K$44/100*B15;ЕСЛИ(И([Общая.xls]Таблица старая!$C$45<B15;B15<=[Общая.xls]Таблица старая!$E$45);0,84*[Общая.xls]Таблица старая!$K$45/100*B15;"Значение B15 вне интервала!"))

Вопрос: какой вид должна иметь формула для использования данных с другого листа? Или здесь требуется применить другой подход, например, "Таблицы" сделать не листами, а отдельными файлами?
...
Рейтинг: 0 / 0
31.10.2011, 20:11
    #37505906
vikttur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование данных с разных листов книги Excel
Не понял. Формула брала данные с листа. Этот лист переименовали, данные по прежнему берутся с этого листа. В чем проблема.

Лучше с файлом. Для примера можно ссылки не на книги. а на разные листы.
...
Рейтинг: 0 / 0
31.10.2011, 20:59
    #37505937
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование данных с разных листов книги Excel
Можно попробовать сперва заменить все формулы на текст - заменой по всему листу заменить "=" на например "#", затем переименовать листы, затем заменить назад "#" на "=".
...
Рейтинг: 0 / 0
31.10.2011, 21:46
    #37505981
КД
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование данных с разных листов книги Excel
viktturНе понял. Формула брала данные с листа. Этот лист переименовали, данные по прежнему берутся с этого листа. В чем проблема.

Лучше с файлом. Для примера можно ссылки не на книги. а на разные листы.

Так вот как раз была задумка, что если листы переименовать, то данные будут браться с листа, который ТЕПЕРЬ называется "Таблица" (а раньше назывался "Таблица новая").
Но! Каким-то хитрым образом сохраняется связь с листом в другом файле и переименование не помогает - синхронно с переименованием меняется и ссылка на него в формуле (по крайней мере при таком виде ссылки).
...
Рейтинг: 0 / 0
01.11.2011, 00:04
    #37506082
Serge 007
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование данных с разных листов книги Excel
КДесли листы переименовать, то данные будут браться с листа, который ТЕПЕРЬ называется "Таблица" (а раньше назывался "Таблица новая").
=ДВССЫЛ("Таблица"&"!A1")
...
Рейтинг: 0 / 0
01.11.2011, 18:17
    #37507308
КД
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование данных с разных листов книги Excel
Serge 007, спасибо! Буду пробовать.
...
Рейтинг: 0 / 0
28.11.2011, 18:34
    #37548611
КД
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование данных с разных листов книги Excel
Спасибо! (прошу прощения, что с опозданием)
Назрел еще такой вопрос. Если файл с данными не загружен, то в ячейках файла, ссылающегося на него, возникает ошибка ссылки #ССЫЛКА!
ОК, загружаем файл с "первичными данными":

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
Private Declare Function apiShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
    (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, _
    ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

'***App Window Constants***
Private Const WIN_NORMAL =  1  'Open Normal
Private Const WIN_MAX =  3  'Open Maximized
Private Const WIN_MIN =  2  'Open Minimized

Private Sub Workbook_Open()

    GP_Run_Association_Application
    
End Sub

Private Sub GP_Run_Association_Application()
Dim strFilePath As String
Dim intRetrievingValue As Integer
    
    strFilePath = "\\10.112.52.106\химия\Расчеты\Общая.xls"
    
    'запускаем приложение и этот файл в нем
    intRetrievingValue = apiShellExecute(Application.hWnd, "open", strFilePath,  0 ,  0 , WIN_NORMAL)

End Sub

Но при этом файл "Общая" загружается в отдельном окне, и ошибка ссылки не исчезает. А как открыть его в этом же окне?
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Использование данных с разных листов книги Excel / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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