Модераторы: mihanik
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Поиск номера элемента в массиве 
:(
    Опции темы
temr
Дата 28.1.2008, 21:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 30.3.2006

Репутация: нет
Всего: нет



Добрый день всем 
стоит следующая задача есть массив 

array(100,200,3)

во вторую строчку массива записаны имена 
как можно в вба написать процедуру поиска номера элемента по названию последнего без перебора всего массива
 
Заранее благодарю
Тимур
PM MAIL   Вверх
bilya
Дата 29.1.2008, 02:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 112
Регистрация: 3.1.2007

Репутация: 1
Всего: 1



temr,  что такое
Цитата(temr @  28.1.2008,  21:28 Найти цитируемый пост)
во вторую строчку массива записаны имена

 smile 
У вас двумерный массив? При чем тут тогда ряд?

PM MAIL   Вверх
temr
Дата 29.1.2008, 08:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 30.3.2006

Репутация: нет
Всего: нет



Согласен, дезинформировал)
массив трехмерный - массив(год, месяц, день) пусть первое измерение это год второе месяц третье день пусть у нас данные за 2005 и 2006 годы 
как в этом массиве найти индекс допустим  февраля 2005 года без перебора всех данных 
PM MAIL   Вверх
abyrval
Дата 29.1.2008, 13:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 28.6.2007

Репутация: нет
Всего: нет



Судя по размерам массива... smile - 3 "таблицы" 100*200 каждая, для этих данных хватит и двумерного...

может, я не понял вопрос, но поиск подразумевает перебор данных smile



PM MAIL   Вверх
temr
Дата 29.1.2008, 14:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 30.3.2006

Репутация: нет
Всего: нет



Согласен может и хватит но давайте сначала  пример

есть файл в котором содержаться три столбца  
первый столбец дата , второй столбец имя человека, третий его накопленный доход 

2006 ваня 10
2006 оля 20
2006 катя 15
2007 катя 20
2007 юля 10
2007 ваня 20


я хочу найти доход вани с 2006 по 2007 год 
как я могу найти индекс вани на 2006 год ?

Добавлено через 2 минуты и 32 секунды
По поводу перебора 
я могу решить поставленную задачу перебором второго столца за 2006 год но как мне кажеться это займет больше времени нежели использование функции типа Match  или Vlookup
PM MAIL   Вверх
abyrval
Дата 29.1.2008, 14:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 28.6.2007

Репутация: нет
Всего: нет



Цитата(temr @  29.1.2008,  14:17 Найти цитируемый пост)
я хочу найти доход вани с 2006 по 2007 год как я могу найти индекс вани на 2006 год ?

чет я с годами не понял

снят вопрос

Это сообщение отредактировал(а) abyrval - 29.1.2008, 14:30
PM MAIL   Вверх
temr
Дата 29.1.2008, 14:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 30.3.2006

Репутация: нет
Всего: нет



Забыл добавить я формирую массив array(year,name,1)
где year годы
name имена 
1- накопленный доход

и поиск нужно выполнить в этом массиве
PM MAIL   Вверх
Akina
Дата 29.1.2008, 15:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 26
Всего: 454



Первый вопрос - почему эти данные хранятся в массиве? Массив категорически не предназначен для выполнения операций, которые тебе требуются.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
temr
Дата 29.1.2008, 15:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 30.3.2006

Репутация: нет
Всего: нет



to Akina
Хранить данные в массиве мне необходимо из-за поставленной задачи а она заключается в следующем
есть файл 300 мегабайт в котором хроняться таблицы в хоторых по датам раскиданы уникальные записи мне нужно после формирования массива вывести таблицу в которой по алгоритму описанному выше(пример с ваней) я бы формировал таблицу. Если я напрямую буду выводить данные каждой промежуточной операции в экселевский лист то это будет долго а во вторых сам файл в конечном итоге станет похожего размера что и исходник 
 Встречный вопрос а почему он не предназначен для таких операций ?
если у меня есть нужный индекс записи массива то не проще ли выполнить промежуточные операции в нем ?
PM MAIL   Вверх
temr
Дата 29.1.2008, 16:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 30.3.2006

Репутация: нет
Всего: нет



Всем спасибо проблему решил с помощью Scripting.Dictionary
PM MAIL   Вверх
igor_123
Дата 29.1.2008, 19:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 14.12.2007
Где: Днепропетровск

Репутация: нет
Всего: нет



а почему бы не положить данные в БД какую нибудь и не делать из неё запросы ???
PM MAIL   Вверх
temr
Дата 4.2.2008, 11:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 30.3.2006

Репутация: нет
Всего: нет



 
Цитата

а почему бы не положить данные в БД какую нибудь и не делать из неё запросы ???


Для этого нужно создать БД, а это тема другой ветки  smile 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование, связанное с MS Office"
mihanik staruha

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами



  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • Оставляйте свои записи в "Книге отзывов о работе администрации"
  • А вот тут лежит FAQ нашего подраздела


Если Вам понравилась атмосфера форума, заходите к нам чаще!
С уважением mihanik и staruha.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование, связанное с MS Office | Следующая тема »


 




[ Время генерации скрипта: 0.0822 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.