Ru-Board.club
← Вернуться в раздел «Программы»

» Excel FAQ

Автор: Geezer S
Дата сообщения: 08.09.2004 10:40
Busyatka
Если формат ячеек с исходными числами - "Общий", а сами они лежат в столбце А, то вводим в первую ячейку свободного столбца (изменив формат этого столбца на "Дата", ДД.ММ.ГГ") нечто вроде:

=ДАТАЗНАЧ(ПСТР(ТЕКСТ(A1;"000000");1;2)&"."&ПСТР(ТЕКСТ(A1;"000000");3;2)&"."&ПСТР(ТЕКСТ(A1;"000000");5;2))

Ну, и протягиваем вниз, скока надо...
Автор: Reagent
Дата сообщения: 08.09.2004 11:16
Busyatka
Можно и без макроса, примерно вот так.
Допустим в ячейке А4 у тебя число 100904
Рисуеш в любую ячейку:
=СЦЕПИТЬ(ПСТР(A4;1;2);".";ПСТР(A4;3;2);".";ПСТР(A4;5;2))
и получаешь
10.09.04

kiloton
значит это глюк книги, такое бывает иногда, насколько мне известно это не лечиться.
Автор: Looking
Дата сообщения: 08.09.2004 11:32
Busyatka
А эти данные, где неправильная дата в каком-то линейном блоке (части колонки или строки) или рассыпаны произвольно. А то вроде там тебе советуют макросы и т.д. именно для первого случая. Я тоже для случая линейного блока советовал. Там можно обойтись и без макроса. Просто создаешь одну формулу, а потом протяжкой ее копируешь
Если же данные разбросаны произвольно, то там проблема как отличить правильные числа от неправильных дат.
Ты наверное получаешь такой результат из другого пакета. Напиши подробнее, может тебе подскажут более удобный способ.

Добавлено
Reagent
Ему (Busyatka) возможно надо не только изображение, но и правильный формат дат. В этом случае
ДАТАЗНАЧ(ПСТР(A4;1;2)&"."&ПСТР(A4;3;2)&"."&ПСТР(A4;5;2))
потом для ячеек результата установить формат "Дата" (если использовать & формула получается короче)
Автор: wizzi
Дата сообщения: 08.09.2004 12:15
подскажите плз, как разместить данные так, чтобы на графике (тип гистограмма) данные отображались в одном столбике? оси обычные х и у ... Накопительная и процентная диаграмма не подходят
Автор: Reagent
Дата сообщения: 08.09.2004 13:01
Looking
согласен, если нужен правильный формат дат, то догда нужна формула Geezer Sра
товоя работать не будет, моя естественно тоже
Автор: Busyatka
Дата сообщения: 08.09.2004 14:10
Looking
я девАчка спасибо за помощь. Линейный блок получился. Это здорово.
А вот разбросанный не понимаю...
Автор: Looking
Дата сообщения: 08.09.2004 16:21
Busyatka
Я имел в виду не блок, а если ячейки с датами разбросаны по таблице произвольным образом.
Так откуда получаются эти неправильные даты?
Автор: Geezer S
Дата сообщения: 09.09.2004 07:31
Reagent
А я непроверенные и неработающие формулы в посты не вставляю. Сначала проверил на тестовом массиве, потом запостил
Кстати, моя формула работает и для первых 9 дней месяца, вида 10904.
Busyatka
Абсолютно прав Looking, если знать, откуда берутся данные, то можно что-нить придумать. В противном случае - искать закономерность расположения ячеек с датами и изобретать что-то по части адресации.
Автор: Busyatka
Дата сообщения: 09.09.2004 09:36
Looking
Да, спасибо, у меня все получилось и с формулой, когда можно копировать и с вариантом, когда разбросаны ячейки по таблице. Не сразу, но справилась. Спасибо огромное

Осталось теперь научится использовать макрос, который здесь предложили и тогда ваще полный порядок


Добавлено
Geezer S
Правильная формула и еще какая
Только что значит откуда берутся данные? введены в обычную таблицу екселя где-то столбиком, а где то в отдельно стоящем варианте (разбросаны), но об этом я уже написала, что формулы работают и это здорово!
Автор: Looking
Дата сообщения: 09.09.2004 09:56
Busyatka
Так дело в том, что если вводить даты с точками, то они и будут восприняты как даты, если до этого ячейки с ними не были принудительно установлены как текст. А если их вводят руками, то что мешает сразу писать правильно?
Автор: Busyatka
Дата сообщения: 09.09.2004 10:16
Looking
Нет, там уже был прислан такой документ, где даты были вбиты шестизначными числами и формат у них был Общий. И то, что так вбивали (без точек) за это уже ЦУ получили
Автор: Tropin
Дата сообщения: 09.09.2004 11:15
Geezer S
Reagent
Busyatka
Я как раз акромя макросов ниче больше не умею :)
Просто я думал, что даты нужно изменить, а не делать их копии формулами...
Я люблю решать задачи в один проход...
Автор: Geezer S
Дата сообщения: 09.09.2004 11:32
Tropin
Ну да, если менять прямо в ячейке, то макрос - самое то.
А вот если пользоваться самописными фукнциями, да если их на листе много, и еще комп не самый-самый (как большинство офисных тачек), то может начаться такая фигня - при автоматическом пересчете (после каждого ввода) все это начинает зверски тормозить.
Я сначала обнаружил, что если в таком случае использовать в формулах не функции VBE, а функции рабочего листа, то скорость обработки существенно возрастает.
Ну а когда базюка перевалила за 1000 записей (в каждой из которых по 30 полей, из них 20 - расчетные), я сдался и все оформил в виде макросов, а все данные, и исходные, и расчетные, хранил в виде значений, а не формул. Собственно, макросы и осуществляли пересчет при изменении данных и поступлении новых.
Sorry(многословие).
Автор: Busyatka
Дата сообщения: 09.09.2004 11:57
Tropin
А я как раз ничего в этом не смыслю (ну так разве что на пальцах
А в ворде тоже макросы пишешь?
У меня больше там еще вопросов возникает и порой немыслимые какие то задачи приходится решать с помощью ворда.
Автор: Tropin
Дата сообщения: 09.09.2004 13:18
Geezer S
Абсолютно согласен, хотя VBA - тот еще тормоз, но другого почти не дано и потому если писать красивый код, то 1000 записей не предел... Из личного: обрабатывал массив 30000 записей по 50 полей, надо было объединять оборудование по типам и распихивать в разные файлы порядка 2000 файлов... Правда макрос работал так минут 40, но все слепил без единой ошибочки...

Busyatka
Дык изучай :)
Ну ворд - будет оффтопом, потому спрашивай здесь
Автор: Looking
Дата сообщения: 09.09.2004 16:05
Tropin
Вообщето я не понимаю такой мазохизм, когда задачи, по своей природе предназначенные для СУБД и легко в них реализуемые закручивают через Excel и VB.
А у Busyatka-ки данные могут располагаться произвольным образом и потому одним проходом, через макрос сделать нельзя, т.к. пользователю необходимо предварительно тыкать, куда его применить (если для ячеек с датами не был прямым образом установлен текстовый формат)
Автор: Geezer S
Дата сообщения: 10.09.2004 06:55
Looking
Ну почему мазохизм? Многие попадают на ситуацию, когда надо срочно сделать, а спеца по СУБД нет и изучать нет времени. Кроме того, Эксель все же электронная таблица, и вычислительная часть даст 100 очков вперед любой СУБД; да и попроще он, по-понятнее (ИМХО). При этом возможностей в нем достаточно, вплоть до работы с внешними БД (через ODBC), SQL-запросы (посредством Query) и многое другое.
Что касается произвольного расположения данных - тут что-то вообще непонятно. Хоть в СУБД их, хоть в Эксель засовывай, все равно любая БД подразумевает упорядочивание, которое надо провести либо на стадии формирования массива, либо в текстовом виде, либо на стадии преобразования. Иначе какой смысл вообще этим заниматься - красиво распечатать, да? Дык в Ворде еще красивше можно сделать.

Добавлено
Ну вот, и в чине повысили...
Автор: Busyatka
Дата сообщения: 10.09.2004 10:29
Tropin
Geezer S
Я буду стараться (изучать), только задача у меня на данный момент другая...я же не программист и использую Ексель только как практик-пользователь.
А вы мне здорово помогли
Автор: OlegA
Дата сообщения: 10.09.2004 17:38
Ребят, помогите.
Задача такая.
1. Имеем большую таблицу с несколькими столбцами и много строк со значениями.
2. Включаем автофильтр по какому небудь критерию - строк остаётся меньше.
Вопрос.
Как мне сделать, чтобы внизу таблицы показывало сумму отфильтрованных значений.
Я ставлю сумм и выделяю отфильтрованный диапазон, а он мне показывает сумму всей таблицы.
Заранее спасибо.
Автор: Mushroomer
Дата сообщения: 10.09.2004 19:57
OlegA
=ПРОМЕЖУТОЧНЫЕ.ИТОГИ(9;C3:C8)
Из хелпа Функция ПРОМЕЖУТОЧНЫЕ.ИТОГИ игнорирует все скрытые строки, которые получаются в результате фильтрации списка. Это важно в том случае, когда нужно подвести итоги только для видимых данных, которые получаются в результате фильтрации списка. 9 - это параметр, отвечающий за суммирование
Автор: OlegA
Дата сообщения: 12.09.2004 06:08
Mushroomer
То, что надо.
Спасибо.


Автор: Gretrick
Дата сообщения: 13.09.2004 13:23
Можно ли стандартными средствами в Exel'e сделать календарь с пометками на каждый день.
Если нет то посоветуете какую нибудь простенькую програму (календарь с пометками).
Автор: UrTS
Дата сообщения: 17.09.2004 07:54
Подскажите, как сделать в Экселе ограничение на к-во строк и столбцов на листе
чтобы было не 65536х256 а 500х16?
Автор: Mushroomer
Дата сообщения: 17.09.2004 09:33
UrTS
Не уверен, что тебе подойдет способ, который я сейчас предложу:
1) Скрой все лишние строки и столбцы (смотри, чтобы в этих скрываемых столбцах и строках не было данных, а иначе размер файла сильно вырастет).
2) Установи защиту на лист против вставки новых строк и столбцов
Автор: xcm
Дата сообщения: 17.09.2004 10:52
Gretrick
нарисовать календарик в Экселе легко. Для заметок юзать примечания к ячейкам.

Если хочешь простенький органайзер-ходи сюда,найдется все
http://www.forum.ru-board.com/topic.cgi?forum=5&topic=0777&start=80#lt
Автор: UrTS
Дата сообщения: 17.09.2004 11:33
Mushroomer
Спасибо, помогло.
Автор: Busyatka
Дата сообщения: 22.09.2004 10:29
Кажется, где-то читала ответ на этот вопрос, попробую найти, но если не трудно напишите еще раз: когда меняются названия столбцов и строк местами (сверху вместо букв цифры, а в столбик идут буквы) как поменять обратно?

Добавлено
Ой, я нашла, спасибо
Сервис/параметры/общие снять галочку напротив Стиль ссылок R1C1
Спасибо.
Автор: Tropin
Дата сообщения: 22.09.2004 13:43
Следующий вопрос по VBA
есть ли там функция, позволяющая на время передать управление главному для обработки сообщений, пришедших к нему? (аналог, например в Delphi - Application.ProcessMessages)

Если кому-то не понятно, то прясню:
Запускаю программу на VBA - выполняются циклы и прочая дрянь.... их много, следовательно проц грузится на 100% и оболочка интерпретатора перестает реагировать на мои команды до полного окончания выполнения проги...
Допустим я хочу прервать ее работу в произвольный момент времени на любом месте, как это сделать???
Автор: igorash
Дата сообщения: 22.09.2004 20:47
Приветствую. такой вопрос - вдруг кто знает и возожно ли это в теории - чтоб эксел в автоматическом режиме находил какое-то уникальное обозначение (переменную) и когда нашел - копировал всю строку полностью на сосендний лист.. смысл такой - на одном листе сводные платежи от разных людей на одном и том же счету - а на соседних конкретно по людям - хотелось бы автоматизировать а не копировать каждый раз строку платежа и не вносить ее вручную на соседний лист. Заранее спасибо за консультации...
Автор: UrTS
Дата сообщения: 23.09.2004 11:14
Уважаемые специалисты по экселю!
как в экселе сделать вот так:

----------
|над- / |
|пи- / |
|сь1/на-|
| /дпи-|
| / cь2 |
----------

???????????????????????????????????

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Gentoo Linux


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.