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

» Excel FAQ (часть 3)

Автор: SERGE_BLIZNUK
Дата сообщения: 23.07.2007 14:58
stx2006
Пусть,
А1- расстояние в км.
B1 - скорость в км/ч
Тогда кол-во целых
часов:=ОТБР(A1/B1)
минут:=ОТБР((A1/B1-ОТБР(A1/B1))*60)
секунд (с дробью):=(((A1/B1-ОТБР(A1/B1))*60)-ОТБР((A1/B1-ОТБР(A1/B1))*60))*60

в одной ячейке всё сразу:
Код:
=ТЕКСТ(ОТБР(A1/B1);"####0")&" час." & ТЕКСТ(ОТБР((A1/B1-ОТБР(A1/B1))*60);"#0")&" мин."&ТЕКСТ((((A1/B1-ОТБР(A1/B1))*60)-ОТБР((A1/B1-ОТБР(A1/B1))*60))*60;"#00")&" сек."
Автор: Mushroomer
Дата сообщения: 23.07.2007 15:39
stx2006
C часами и минутами я быстро сообразил, а вот с секундами минут 15 думал
=ВРЕМЯ(ОТБР(C1);(C1-ОТБР(C1))*60;ОСТАТ((C1-ОТБР(C1))*3600;60))
В С1 находится частное.

SERGE_BLIZNUK
Я твой ответ не видел, просто отходил по делам.
Автор: ZORRO2005
Дата сообщения: 23.07.2007 19:33
SERGE_BLIZNUK
Спасибо за помощь:
Мне нравится Вариант 1)
Вариант 2) у меня реализован на стр.2 через Данные-Итоги
Вариант 3)
Цитата:
сможете запрограммировать ВСЁ что угодно - в том числе, нарисовать любые отчёты.
-это и есть выгрузка из СУБД(Visual Basic 6.0 FPSpread),
а вот с отчетами возникли сложности именно в Печати.
Если интересно пошлю в ПМ скриншоты.
Вот один:
http://slil.ru/24656822
Автор: SERGE_BLIZNUK
Дата сообщения: 23.07.2007 20:42
Mushroomer
верю... ;-)) тем более решение другое (хотя, конечно, основа одна и та же, но реализация отличается - особенно подсчёт количества секунд. Кстати, для меня это тоже было самым сложным - получалось 15.48 минуты - так вот, думал нужно ли 0.48 умножать на 60 или это уже и есть 48 секунд... пришло всё время перевести в секунды, отнять часы и минуты и остаток смотреть... ;-)))))))


ZORRO2005
Вариант 1) очень страдает от того, что нельзя получить номер строки, какой она будет на печатной странице!!! Или всё таки можно??! что скажет "обчество"?

А с Дельфи дружите?..
Если да, то я могу попробовать реализовать вариант 3) на Дельфи.
Если предложение заинтересовало - жду в ПМ... (тут уже и так оффтопим...)
Автор: namchik
Дата сообщения: 24.07.2007 04:06
Как сделать, чтобы в ячейке с формулой осталось только ее значение (только число, конечный результат) ?
т.е нужно не скрыть формулу, а тупо убить ее, оставив лишь значение...
Автор: dino
Дата сообщения: 24.07.2007 06:05
namchik

Копирование ->правая кнопка мыши ->Специальная вставка ->Значения
Автор: Mushroomer
Дата сообщения: 24.07.2007 06:06
namchik
Это вечный вопрос. Пора видимо в шапку выносить ответ.
1) Правка -> Копировать
2) Правка -> Специальная вставка -> Значения
Автор: namchik
Дата сообщения: 24.07.2007 06:30
dino
Mushroomer
ясненько. спасип.
И еще вопрос, как добавлять по одной пустой строке после каждой имеющейся строки? Сейчас делаю так: с помощью Ctrl выделяю строки через одну, далее - вставка - строки. Добавляются пустые строки, но не после каждой строки, приходится еще выделять строки, перед которыми необходимо добавить пустые, вобщем... долго получается для больших таблиц (
Автор: vasiliy74
Дата сообщения: 24.07.2007 07:28
..?
Автор: Mushroomer
Дата сообщения: 24.07.2007 07:56
namchik
Цитата:
И еще вопрос, как добавлять по одной пустой строке после каждой имеющейся строки
Не уверен, что тебе понравится данный способ, но все же.
F4 - это повтор последней операции. Т.е. одну строчку вставил, а затем или выделяешь по одной строчке и жмешь F4 или выделяешь несколько строк и жмешь F4.
Автор: namchik
Дата сообщения: 24.07.2007 08:01

Цитата:
..?

ну например, имеется список терминов на английском в столбик, а мне нужно под каждым из них перевод на русский написать. Для этого надо после каждой строки добавить новую, пустую строку. Как этот процесс добавления строк ускорить?

Добавлено:
Mushroomer
ну хотя бы так, теперь приходится нажимать 2 раза вниз, затем F4, что уже быстрее чем раньше... а мож это как-то автоматизировать можно?
Автор: vasiliy74
Дата сообщения: 24.07.2007 09:18
Добавлено:
namchik

Цитата:
ну например, имеется список терминов на английском в столбик, а мне нужно под каждым из них перевод на русский написать. Для этого надо после каждой строки добавить новую, пустую строку. Как этот процесс добавления строк ускорить?

выделяй область Data->List->Crate List...
или данные->список->создать список...
Автор: Mushroomer
Дата сообщения: 24.07.2007 10:40
vasiliy74
А у тебя какой Excel? В Excel 2000 в меню "Данные" нет подменю "Список"
Автор: vasiliy74
Дата сообщения: 24.07.2007 10:58
Mushroomer
2003 ниже нет ..
Автор: namchik
Дата сообщения: 24.07.2007 14:15
vasiliy74

Цитата:
выделяй область Data->List->Crate List...
или данные->список->создать список...

Не понял... создал список... и как туда пустые строки по-быстрому вставлять?
Автор: SERGE_BLIZNUK
Дата сообщения: 24.07.2007 16:19
namchik
Да что же вы мучаетесь.... ;-)))
зайдите в редактор Visual Basic (Alt-F11), двойной шелчок слева по ЭтаКнига
вставьте такой код:
ВМЕСТО For RowNum = 1 To 20 укажите от какой строчки до какой вставлять пустые
(будут вставляться через одну строку)


Sub InsEmptyLines()
Dim RowNum As Long
For RowNum = 1 To 20
If (RowNum Mod 2) = 0 Then
Rows(RowNum).EntireRow.Insert
End If
Next
End Sub

потом Alt-F8
InsEmptyLines - Выполнить.
Автор: CEMEH
Дата сообщения: 24.07.2007 22:24
1.Расстояние скорость и время:
Время в Excel 2:15:29 это не совсем часы минуты секунды. Попробуйте набрать в ячейке время, а потом смените формат ячейки на числовой и вы получите - 0,094086022. Т е число 1 соответствует 1 суткам, 0,5 - 12 часам (посчитать не сложно)
Формула получится самая обыкновенная =(расстояние/время/24) формат ячейки - время в любом удобном виде.



2. Как закрепить?
если ячейку с формулой потянуть за правый нижний уголок то получим в остальных ячейках:
=А1+В1
=А2+В2
=А3+В3
Если мне надо "закрепить" ячейку (например А1) я ставлю $A1$
и получаю:
=$A1$+В1
=$A1$+В2
=$A1$+В3
А как закрепить не ячейку а массив?
Автор: namchik
Дата сообщения: 25.07.2007 01:08
SERGE_BLIZNUK
СПАСИБО. Полезный макрос!
Автор: SERGE_BLIZNUK
Дата сообщения: 25.07.2007 01:10
CEMEH

Цитата:
Время в Excel 2:15:29 это не совсем часы минуты секунды.

Вы не правы - формула от Mushroomer
(=ВРЕМЯ(ОТБР(C1);(C1-ОТБР(C1))*60;ОСТАТ((C1-ОТБР(C1))*3600;60)) )
возращает ИМЕННО ВРЕМЯ!


Цитата:
Формула получится самая обыкновенная =(расстояние/время/24) формат ячейки - время в любом удобном виде.

А вот это Красиво!!! Супер!!! Красавчег!!!!!! :up::applause:



Цитата:
=$A1$+В1
ты описАлся... $A$1...

Цитата:
А как закрепить не ячейку а массив?

Например ?? поясни...


Добавлено:

Кстати, напоминаю всему уважаемому сообществу, что преобразовать тип ссылки в формуле можно выделив ссылку и нажимая F4 (относительная -> абсолютная -> смешанная и так по кругу)!
Автор: CEMEH
Дата сообщения: 25.07.2007 07:33
SERGE_BLIZNUK
Да, описался..
Пример вот: =СРЗНАЧ(A1:A29)+B1
Я хватаю правый нижнй угол, тяну вниз и мне надо А1:А29 оставить закрепленными, а В1 пусть меняется на В2, В3, В4 и так далее. По всякому ставил $ но что то не получается.

после совета с F4 вопрос можно снять с повестки дня ))) Спасибо!
Автор: vasiliy74
Дата сообщения: 25.07.2007 11:06
namchik
ну там в низу сама строка создаётся и протякивает все предидущие формулы плюс можно использовать Total с фильтрованием по полю очень удобно.

не кто не сталкивался явного признака нет, excel 2003 SP2 вылетает при разных ситуациях. пр переключениями между файлами excelя чаще всего (т.е. работаешь в одном зашол в другой и раз вылетело)

Event Type: Error

Event Source: Microsoft Office 11

Event Category: None

Event ID: 1000

Date: 7/23/2007

Time: 11:27:17 AM

User: N/A

Computer: S-MSK-TERM03

Description:

Faulting application excel.exe, version 11.0.6560.0, stamp 4296b6f2, faulting module excel.exe, version 11.0.6560.0, stamp 4296b6f2, debug? 0, fault address 0x002727a6.

Data:

0000: 41 00 70 00 70 00 6c 00 A.p.p.l.

0008: 69 00 63 00 61 00 74 00 i.c.a.t.

0010: 69 00 6f 00 6e 00 20 00 i.o.n. .

0018: 46 00 61 00 69 00 6c 00 F.a.i.l.

0020: 75 00 72 00 65 00 20 00 u.r.e. .

0028: 20 00 65 00 78 00 63 00 .e.x.c.

0030: 65 00 6c 00 2e 00 65 00 e.l...e.

0038: 78 00 65 00 20 00 31 00 x.e. .1.

0040: 31 00 2e 00 30 00 2e 00 1...0...

0048: 36 00 35 00 36 00 30 00 6.5.6.0.

0050: 2e 00 30 00 20 00 34 00 ..0. .4.

0058: 32 00 39 00 36 00 62 00 2.9.6.b.

0060: 36 00 66 00 32 00 20 00 6.f.2. .

0068: 69 00 6e 00 20 00 65 00 i.n. .e.

0070: 78 00 63 00 65 00 6c 00 x.c.e.l.

0078: 2e 00 65 00 78 00 65 00 ..e.x.e.

0080: 20 00 31 00 31 00 2e 00 .1.1...

0088: 30 00 2e 00 36 00 35 00 0...6.5.

0090: 36 00 30 00 2e 00 30 00 6.0...0.

0098: 20 00 34 00 32 00 39 00 .4.2.9.

00a0: 36 00 62 00 36 00 66 00 6.b.6.f.

00a8: 32 00 20 00 66 00 44 00 2. .f.D.

00b0: 65 00 62 00 75 00 67 00 e.b.u.g.

00b8: 20 00 30 00 20 00 61 00 .0. .a.

00c0: 74 00 20 00 6f 00 66 00 t. .o.f.

00c8: 66 00 73 00 65 00 74 00 f.s.e.t.

00d0: 20 00 30 00 30 00 32 00 .0.0.2.

00d8: 37 00 32 00 37 00 61 00 7.2.7.a.

00e0: 36 00 0d 00 0a 00 6.....



Добавлено:
На сайте планета ексель вот такую фразу нашёл:

Цитата:
Создать в ячейке выпадающий список с элементами из ячеек другого листа – трудоемкая задача, да и не каждый умеет.

По моему невозможно чтобы из другого листа ? а не вопрос умеет или нет... разве не так?


Добавлено:
Как работать вместе не выхдя из файла по сети, поочерёдно переходя в режим риад онли...?
Автор: vasiliy74
Дата сообщения: 25.07.2007 18:43
ещё вопрос если я например получаю обощённое значение A581&"_"&B581&"_"&F581 то могу ли я его стандартными функциями обратно развернуть? по я чейкам??
Автор: CEMEH
Дата сообщения: 25.07.2007 19:15
Вопрос:
В результате вычислений получилось число. Какой формулой получить значение, расположенное в ячейке, номер строки которой = полученное число?
Автор: alt76
Дата сообщения: 25.07.2007 19:51
vasiliy74
можно, тока у меня очень извращенно получилось

C D E F G H I
Автор: CEMEH
Дата сообщения: 25.07.2007 20:15
alt76
Нужна хорошая книжка по VBA
Автор: SERGE_BLIZNUK
Дата сообщения: 25.07.2007 20:32
vasiliy74

Цитата:

Цитата: Создать в ячейке выпадающий список с элементами из ячеек другого листа – трудоемкая задача, да и не каждый умеет.

По моему невозможно чтобы из другого листа ? а не вопрос умеет или нет... разве не так?
Автор: alt76
Дата сообщения: 25.07.2007 21:37
CEMEH

Цитата:
Вопрос:
В результате вычислений получилось число. Какой формулой получить значение, расположенное в ячейке, номер строки которой = полученное число?


Код:
Public Function GetValue(Row As Long, Col As Long, ParamArray RangeArray() As Variant) As Variant

On Error GoTo Err

Set Cell = Cells(Row, Col)

If IsError(Cell) = True Then
GetValue = Null
Else
GetValue = Cell.Value
End If

Exit Function
Err:
GetValue = Null

End Function
Автор: SERGE_BLIZNUK
Дата сообщения: 25.07.2007 21:58
CEMEH

Цитата:
Нужна хорошая книжка по VBA

Какая книжка хорошая, я не знаю ;-)))
Пожалуй лучшая - Уокенбах Джон. Профессиональное программирование на VBA в Excel 2002... (смотри ниже в Подробнее...

Прошу не посчитать за спам и рекламу, но крайне настойчиво рекомендую сходить на _http://www.nаtаhаus.ru/
Там через поиск много чего можно найти!
(на вскидку - [more]

Название: Профессиональное программирование на VBA в Excel 2002
Автор: Уокенбах Джон
Издательство: М.: Издательский дом "Вильямс"
Год: 2003
Страниц: 784
Формат: Djvu/PDF в RAR архиве + 3% на восстановление
Размер: Djvu -14,9 МБ/ PDF-8.46 MB
ISBN: ISBN 5-8459-0541-9 (рус.)
Качество: Хорошее
Язык: Русский

По Excel есть немало серьезных книг, но эта все равно единственная, где разработка приложений рассматривается в широком плане. Дело в том, что VBA — всего лишь один из компонентов разработки приложений (правда, компонент этот достаточно большой). А такой программный продукт, как Excel, отличается крайней таинствен¬ностью. В нем множество интересных возможностей, притаившихся где-то а глубинах и неведомых простому пользователю. Кроме того, некоторые хорошо известные функции можно использовать по-разному. Миллионы людей по всему миру используют Excel. И только несколько процентов пользователей действительно понимают, на что способен этот продукт. В данной книге автор попытается ввести вас в эту элитную компанию. Вы готовы?




Название: Microsoft Office Professional: Лабораторный практикум.
Автор: Тутыгин В.С.
Издательство: Издательство СПбГПУ
Год: 2004
Страниц: 162
Формат: doc + примеры в архиве
Размер: 8.28 Mb
ISBN: УДК 681.3.06
Качество: отличное
Язык: русский


Название: Освой самостоятельно программирование для Microsoft Excel 2000 за 21 день
Автор: Мэтью Харрис
Издательство: Вильямс
Год: 2000
Страниц: 880
Формат: djvu
Размер: 20 mb
ISBN: 5-8459-0061-1, 0-672-31543-2
Качество: 300 dpi
Серия или Выпуск: Освой самостоятельно


Название: Использование MS Excel и VBA в экономике и финансах
Автор: Гарнаев А. Ю.
Издательство: БХВ — Санкт-Петербург
Год: 2000
Страниц: 336
Формат: Djvu
Размер: 5,56 МБ
ISBN: ISBN 5-8206-0024-Х
Качество: Хорошее
Язык: Русский


Название: Использование макросов в Excel
Автор: С. Роман
Издательство: СПб.: Питер
Год: 2004
Страниц: 507 с.: ил.
Формат: DJVU
Размер: 8.27 MB
ISBN: 5-94723-584-6

От издателя
Несмотря на мощные функциональные возможности, обеспечиваемые пользовательским интерфейсом Excel, существует ряд задач, выполнение которых возможно только программным путем. Книга "Использование макросов в Excel" представляет собой введение в программирование на Excel VBA, содержащее примеры решения различных практических задач, возникающих при работе в Excel.

Материал книги рассчитан на пользователей Excel, а также программистов, которые не знакомы с объектной моделью Excel. Наряду с разделами,посвященными разработке макросов для Excel 2002, здесь излагается вводный курс по написанию макросов и программ в среде Excel.
спасибо Андрей ака AndiGo


Название: Программирование на VBA 2002
Автор: Кузьменко В.Г.
Формат: djvu
Размер: 10 Mb


Л. А. Демидова, А. Н. Пылькин
Программирование в среде Visual Basic for Applications
Серия: Специальность. Для высших учебных заведений
Издательство: Горячая Линия - Телеком
Год издания:2004
Страниц: 176
Формат: DJVU
Размер:1.81 MB
[/more])
Внимание. на сайте требуется обязательная регистрация...

ну и, как справедливо утверждают знатоки - справка + интернет + форум + голова...
всё это способно творить чудеса ;-)))
Автор: Mushroomer
Дата сообщения: 26.07.2007 09:07
alt76
Цитата:
можно, тока у меня очень извращенно получилось
Да уж не без этого Макросами имхо надо делать только то, что обычными формулами не делается

vasiliy74
Цитата:
получаю обощённое значение A581&"_"&B581&"_"&F581 то могу ли я его стандартными функциями обратно развернуть? по я чейкам??
Мой пример:
числа в A1:A3
B1=A1&"_"&A2&"_"&A3
C1=ЛЕВСИМВ(B1;НАЙТИ("_";B1;1)-1)
D1=ПСТР(B1;ДЛСТР(C1)+2;НАЙТИ("_";B1;ДЛСТР(C1)+2)-1-ДЛСТР(C1)-1)
E1=ПРАВСИМВ(B1;ДЛСТР(B1)-ДЛСТР(C1)-ДЛСТР(D1)-2)
Автор: vasiliy74
Дата сообщения: 26.07.2007 10:28
SERGE_BLIZNUK
Да однозначно в Шапку нужно! круто! я очень рад очень, очень!!! хе хе ух щяс столько списков обновлю! просто супер!!


А вот ещё в продолжении вопроса: можно ли в зависемости от значения из списка первой ячейки в соседней (второй) присваивать разные списки?

Добавлено:
Mushroomer
спасибо хорошие функции, согласен насчёт макросов...

Добавлено:
и ещё вопрос если значение не из списка то я чейка допустим должна подсветиться красным, не получается список назначен через имя например LIST_OTHER я захожу в формат условное форматирование и пишу если не равно LIST_OTHER то залить красным, в итоге значение в ячейке не из спика а он красным не заливает где я промахнулся,? или напимер пишу если из спика то залить и он заливает тоже все где значения не из списка, на самом деле это сделано потому что данные первоначально заносились не из списка и есть ошибки и вот тким способом хочу исправить!

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Настройка The Bat под gmail.com


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