Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

_Boroda_>> Re: В макросе пробежаться циклом по значениям времени


Профессиональные приемы работы в Microsoft Excel

Выпуск 15
от 2013-04-26

Подписчиков: 5886

Рассылка сайта "Профессиональные приемы работы в Microsoft Excel"

Основные разделы сайта
Статьи
Форум

Новости сайта в формате RSS
Новые сообщения форума в формате RSS
Читать в Яндекс.Ленте

Порекомендуйте нашу рассылку друзьям

Обратная связь
Поддержка
(форум рассылки)

Наши рассылки:

Рассылки Subscribe.Ru
Православные:
Ежедневные библейские чтения
Смоленский календарь
Для выздоравливающих алкоголиков и наркоманов
Книга "День за днем"
Книга "24 часа в сутки"
Ежедневные размышления анонимного алкоголика
Самообразование:
"Профессиональные приемы работы в Microsoft Excel"

Наши сайты

Профессиональные приемы работы в Microsoft Excel
Excel от новичка до эксперта

bonifatiy.narod.ru
В помощь выздоравливающим алкоголикам и наркоманам

Собор Смоленских святых. Жития, иконы, календарь памятных дат Смоленской епархии.

StudentTools.Narod.Ru Для тех, кто любит учиться

Наши друзья

VBAtips.ru -
подсказки и решения на VBA

wordexpert.ru
Профессиональная работа с текстом

planetaexcel.ru
Когда заешь - все просто

Новые сообщения форума "Профессиональные приемы работы в Microsoft Excel"



_Boroda_>> Re: В макросе пробежаться циклом по значениям времени
2013-04-17 15:25 http://forum.msexcel.ru/index.php?action=profile;u=

Private Sub CommandButton1_Click()
 Dim Время As Date
 Dim СчетчикСтрок As Long
    Range("A2:B100").ClearContents
    СчетчикСтрок = 1
    For Время = "10:00" To "11:00:01" Step "00:15"
        If Format(Время, "hh:mm") <> "10:30" Then
            СчетчикСтрок = СчетчикСтрок + 1
            Worksheets("Лист1").Range("A" & СчетчикСтрок) = СчетчикСтрок - 1
            Worksheets("Лист1").Range("B" & СчетчикСтрок) = Время
        End If
    Next Время
End Sub
Опытным путем установил, что для конечного значения 11:00 не считают периоды 12, 15, 20 и 30 минут. Для окончания 23:00 15 минут считает. Так что, судя по всему, это действительно из-зи округления.

freestyler>> Re: Как заменить СЛОВО значением в формуле суммы?
2013-04-17 16:10 http://forum.msexcel.ru/index.php?action=profile;u=
СПАСИБО!

Олег*>> Re: В макросе пробежаться циклом по значениям времени
2013-04-17 16:33 http://forum.msexcel.ru/index.php?action=profile;u=
Private Sub CommandButton1_Click()
 Dim Время As Date
 Dim СчетчикСтрок As Long
    Range("A2:B100").ClearContents
    СчетчикСтрок = 1
    For Время = "10:00" To "11:00:01" Step "00:15"
        If Format(Время, "hh:mm") <> "10:30" Then
            СчетчикСтрок = СчетчикСтрок + 1
            Worksheets("Лист1").Range("A" & СчетчикСтрок) = СчетчикСтрок - 1
            Worksheets("Лист1").Range("B" & СчетчикСтрок) = Время
        End If
    Next Время
End Sub

Как Вы решили проблему игнорирования значения "10:30", мне очень понравилось, а вот с "11:00:01" это, конечно, не Рио-де-Жанейро! :)

Я почему секунду-то отдельно добавляю?
У меня потом (в перспективе) начальное и конечное значение цикла будут из ячеек считываться, а я буду иметь возможность ими "играть". Поэтому мне удобнее "реальное" конечное значение вставить, а программа уже сама будет добавлять эту секунду, если уж без нее никак не...

_Boroda_>> Re: В макросе пробежаться циклом по значениям времени
2013-04-17 17:08 http://forum.msexcel.ru/index.php?action=profile;u=
Точнее говоря, не из-за округления, а из-за ОТСУТСТВИЯ ОКРУГЛЕНИЯ.
Как раз из-за округления. Точнее, округление при преобразовании из двоичного в десятеричное.
Кстати, числа 0,000074658573638956475847 в Excel быть не может. Максимум 15 цифр.
А макрос можно переписать так:
Private Sub CommandButton1_Click()
Dim Время  As Date
 Dim СчетчикСтрок As Long
    Range("A2:B100").ClearContents
    СчетчикСтрок = 1
    For Время = "10:00" To "11:00" & ":01" Step "00:15"
        If Format(Время, "hh:mm") <> "10:30" Then
            СчетчикСтрок = СчетчикСтрок + 1
            Worksheets("Лист1").Range("A" & СчетчикСтрок) = СчетчикСтрок - 1
            Worksheets("Лист1").Range("B" & СчетчикСтрок) = Время
        End If
    Next Время
End Sub


ikki>> Re: Синтаксис
2013-04-17 17:58 http://forum.msexcel.ru/index.php?action=profile;u=
если альфа задается в градусах
или так:
=2*EXP(РАДИАНЫ(A5)-5)+COS(РАДИАНЫ(A5)-1)хорошо, когда есть выбор
 :D

Олег*>> Re: В макросе пробежаться циклом по значениям времени
2013-04-17 19:55 http://forum.msexcel.ru/index.php?action=profile;u=
А макрос можно переписать так:
Private Sub CommandButton1_Click()
Dim Время  As Date
 Dim СчетчикСтрок As Long
    Range("A2:B100").ClearContents
    СчетчикСтрок = 1
    For Время = "10:00" To "11:00" & ":01" Step "00:15"
        If Format(Время, "hh:mm") <> "10:30" Then
            СчетчикСтрок = СчетчикСтрок + 1
            Worksheets("Лист1").Range("A" & СчетчикСтрок) = СчетчикСтрок - 1
            Worksheets("Лист1").Range("B" & СчетчикСтрок) = Время
        End If
    Next Время
End Sub

Решил остановиться вот на таком решении проблемы:

[code]Private Sub CommandButton1_Click()
 Dim Время As Date
 Dim Финиш As Date
 Dim СчетчикСтрок As Long
    Range("A2:B100").ClearContents
    СчетчикСтрок = 1
    Финиш = "11:00"
    Финиш = Round(Финиш, 2)
    For Время = "10:00" To Финиш Step "00:15"
        If Format(Время, "hh:mm") <> "10:30" Then
            СчетчикСтрок = СчетчикСтрок + 1
    ...

Hugo121>> Re: В макросе пробежаться циклом по значениям времени
2013-04-17 23:08 http://forum.msexcel.ru/index.php?action=profile;u=
Так ещё можно:
Private Sub CommandButton1_Click()
    Dim Время As Date
    Dim t As Date: t = #10:30:00 AM#
    Dim СчетчикСтрок As Long

    Range("A2:B100").ClearContents

    СчетчикСтрок = 1
    For Время = "10:00" To "11:00" Step "00:15"

        If CStr(Время) = CStr(t) Then Exit For
        СчетчикСтрок = СчетчикСтрок + 1
        Worksheets("Лист1").Range("A" & СчетчикСтрок) = СчетчикСтрок - 1
        Worksheets("Лист1").Range("B" & СчетчикСтрок) = Время
    Next Время
End Sub


Олег*>> Re: В макросе пробежаться циклом по значениям времени
2013-04-17 23:49 http://forum.msexcel.ru/index.php?action=profile;u=
Так ещё можно:
Private Sub CommandButton1_Click()
    Dim Время As Date
    Dim t As Date: t = #10:30:00 AM#
    Dim СчетчикСтрок As Long

    Range("A2:B100").ClearContents

    СчетчикСтрок = 1
    For Время = "10:00" To "11:00" Step "00:15"

        If CStr(Время) = CStr(t) Then Exit For
        СчетчикСтрок = СчетчикСтрок + 1
        Worksheets("Лист1").Range("A" & СчетчикСтрок) = СчетчикСтрок - 1
        Worksheets("Лист1").Range("B" & СчетчикСтрок) = Время
    Next Время
End Sub

А можно таким способом решить не только проблему "10:30", но и проблему "11:00"?

Кстати, столкнулся еще с одной проблемой из той же серии.
Оказывается Эксель не только со значениями времени в циклах глючит, но и данными типа Single и Double.
Прилагаю простенький пример для иллюстрации. Цикл должен пробегать значения от нуля до 0,5 с шагом 0,1. Верхнее значение, как стало уже доброй традицией,  Экселем игнорируе...

NooBasTiK>> Создание базы данных
2013-04-18 11:38 http://forum.msexcel.ru/index.php?action=profile;u=
Подскажите где можно почитать про  создание базы данных , довольно сложную, в excel с пользовательскими формами( ms access нет на работе и покупать гемор целый). Или если может кто уже имеет опыт создания за вознаграждение приму помощь.

Андрій Гнєвишев>> Re: Как сразу удалить все пользовательские стили ячеек в Excel 2007?
2013-04-18 12:17 http://forum.msexcel.ru/index.php?action=profile;u=
Может кому пригодится, ответ нашел здесь:
http://www.planetaexcel.ru/?PAGE_NAME=message&FID=8&TID=17396&MID=337014#message337014
"...
Решение:
1. Переименовать расширение xlsx в zip.
2. Открыть архиватором.
3. Удалить из папки xl файл styles.xml
4. Обратно переименовать zip в xlsx.
5. В открывшемся файле не будет никого форматирования стилями ячеек
..."

Олег*>> Re: В макросе пробежаться циклом по значениям времени
2013-04-18 12:19 http://forum.msexcel.ru/index.php?action=profile;u=
С дробными управляющими переменными цикла я вроде бы разобрался, как надо поступать. Надо выбирать тип Currency, тогда работает как надо. По крайней мере в моем предыдущем примере.

Private Sub CommandButton1_Click()
 Dim Дробь As Currency
 Dim СчетчикСтрок As Long
 
    Range("A2:B100").ClearContents
    СчетчикСтрок = 1
    For Дробь = 0 To 0.5 Step 0.1
            СчетчикСтрок = СчетчикСтрок + 1
            Worksheets("Лист1").Range("A" & СчетчикСтрок) = СчетчикСтрок - 1
            Worksheets("Лист1").Range("B" & СчетчикСтрок) = Дробь
    Next Дробь
End Sub


Олег Леонидович>> Замена имени файла в формуле.
2013-04-18 12:35 http://forum.msexcel.ru/index.php?action=profile;u=
Добрый день уважаемые форумчане!
Помогите решить проблему.
В примере выложенном мной, в диапазоне выкрашенном серым цветов, находится формула (ВПР) в которой данные берутся из файла под названием X.xls
Нужно макросом заменить имя файла в формуле, на имя находящееся в 1 строке таблицы. (выкрашено жёлтым цветом)
Сам диапазон, как по строкам, так и по столбцам динамический!


GrAnat>> умножение двух массивов
2013-04-18 15:16 http://forum.msexcel.ru/index.php?action=profile;u=
Добрый день.
Помогите написать формулу для умножения количества выпускаемой продукции на нормы расхода материалов.
есть два листа с данными
1) помесячный выпуск продукции (продукция расположена в строках)
2) нормы расхода материалов (продукция расположена в столбцах, а материалы в строках)
Нужно получить ведомость потребности в материалах помесячно, где материалы расположены в строках.
Чувствую, что умножать нужно один массив на другой, но технически не получается. Сложность еще в том, что продукция может быть расположена не по порядку. Может можно написать формулу с умножением при соблюдении условий (соответствия нормы тому или иному виду продукции)?!
Нужно чтобы получилась ведомость потребности в материалах помесячная и по каждому материалу.
Помогите пожалуйста!!!

Oled_Jo>> Формирование плана на день
2013-04-18 16:02 http://forum.msexcel.ru/index.php?action=profile;u=
Доброго всем времени суток!
Помогите пожалуйста, необходимо чтобы при написании даты на листе ПЛАН на нижних строчках автоматически формировались карточки клиентов у которых данная дата прописана в их карточке.
Образец прилагается для лучшего понимания.

DV68>> Re: умножение двух массивов
2013-04-18 16:50 http://forum.msexcel.ru/index.php?action=profile;u=
Так?:

Олег Леонидович>> Re: заполнение ячеек столбца в цикле
2013-04-18 17:01 http://forum.msexcel.ru/index.php?action=profile;u=
Может кому ещё будет нужно.  ::)
Решение данного вопроса с помощью макроса.

Sub tt()
   Dim v_Path As String, v_FileName As String, v_Mask As String

    v_Path = "D:\" 'укажите путь к папке с файлами jpg
    v_iFileName = Dir(v_Path)
    v_Mask = "JPG"
    Do While v_iFileName <> ""
        If UCase(Right(v_iFileName, 3)) = v_Mask Then _
            ActiveSheet.Range("A" & Rows.Count).End(xlUp).Offset(1) = v_iFileName
            ' "A" - столбец куда будут вноситься данные
        v_iFileName = Dir
    Loop

End Sub


Oled_Jo>> Re: Формирование плана на день
2013-04-18 17:25 http://forum.msexcel.ru/index.php?action=profile;u=
Доброго всем времени суток!
Помогите пожалуйста, необходимо чтобы при написании даты на листе ПЛАН на нижних строчках автоматически формировались карточки клиентов у которых данная дата прописана в их карточке.
Образец прилагается для лучшего понимания.

На основе моего образца сделали добрые люди новый вариант, в пятом столбце выбираете дату, и нажимайте кнопку....
По поводу гиперссылок, увы не получается.
У кого нибудь есть варианты выхода из данной проблемы или альтернативный вариант.

Борис Процко>> Re: Создание базы данных
2013-04-18 17:49 http://forum.msexcel.ru/index.php?action=profile;u=
Готов помочь. E-mail: Barsp@yandex.ru.

ZaS2jah0>> Разбить столбец со значениями на несколько столбцов
2013-04-18 21:31 http://forum.msexcel.ru/index.php?action=profile;u=
Здравствуйте.

Есть такая задача. Отсканирован и обработан в FineReader файл (297.xlsx), который затем сохранен в формате Excel.
И есть файл (заказ_2972 Очередь 49.xlsx) в качестве образца, который я создаю вручную.

В идеале нужно автоматизировать процесс приведения отсканированного файла (297.xlsx) к виду файла-образца (заказ_2972 Очередь 49.xlsx). Но, это в идеале - если можно как-то автоматизировать этот процесс, было бы просто замечательно!

В задачу-минимум, которая составляет суть моего вопроса, входит следующее. Нужно разбить столбец С на три столбца. В столбце С изначально представлен профиль материала (в данном случае это листовой металлопрокат) в виде t 6x170x343, где буква t означает именно листовой материал, 6мм - толщина материала, 170мм - ширина материала, 343мм - длина материала.

Нужно из одного столбца С получить три столбца, в первом из которых будет 6, во-втором 170, в-третьем 343.

Просьба помочь решить задачу. Пробовал ее выполнить самостоятельно с помощью стандартн...

sergo44441>> Re: Замена имени файла в формуле.
2013-04-19 07:56 http://forum.msexcel.ru/index.php?action=profile;u=
это можно и без макроса сделать, чекрез замену: выделяете столбец в нем заменяете X.xls на 212.xls для первого столбца и тд

GrAnat>> Re: умножение двух массивов
2013-04-19 08:37 http://forum.msexcel.ru/index.php?action=profile;u=
Большое спасибо!
а нельзя ли обойтись без формулы массива?!
дело в том, что у меня перечень материалов и продукции формируется в отдельных списках, и может увеличиваться.
нет ли возможности в дальнейшем при добавлении нового материала копировать формулу сверху.
у меня это будет таблица, в которой при добавлении строк появляется новый материал, и автоматически копируется формула сверху.
как вариант решения я пробовал под наименованиями продукции на листе Нормы разместить 12 строк с объемом производства по каждой продукции (разносились при помощи СУММЕСЛИ), тогда при добалении нового столбца с продукцией и копировании в него формул из соседнего, получались массивы которые по размеру равны соответствующему массиву норм расхода по строке материала). Далее умножаем один на другой при помощи СУММПРОИЗВ (для каждого месяца, своя строка объемов производства)
Но эта конструкция мне кажется слишком массивной и неэстетичной. К тому же хотелось бы максимально упростить операции по формированию ...

GrAnat>> Re: умножение двух массивов
2013-04-19 10:04 http://forum.msexcel.ru/index.php?action=profile;u=
попробовал в предложенном варианте заменить [abbr=Вводится через Ctrl+Shift+Enter]формулу массива[/abbr] с СУММ на СУММПРОИЗВ без массива, кажется получилось !!!
спасибо!!!

0mega>> Office 2007. Линейка инструментов
2013-04-19 12:17 http://forum.msexcel.ru/index.php?action=profile;u=
Доброго времени суток
2007
При открытии Линейки инструментов, последняя закрывает  первые 2 строчки таблицы.
Как это лечится ?


_Boroda_>> Re: Office 2007. Линейка инструментов
2013-04-19 12:43 http://forum.msexcel.ru/index.php?action=profile;u=
У меня так:
панель быстрого доступа (на которую, кстати, можно повыносить частоупотребляемые кнопки - намного удобнее получается) размещаем ПОД лентой и ширину строки формул делаем в 2 строчки

Лариса Иванова>> Re: нумерация строк
2013-04-19 12:44 http://forum.msexcel.ru/index.php?action=profile;u=
Подскажите как понимать запись   B5<>B4,  не пойму почему в формуле такому выражению, при его соответсвии, присваивается 1??

0mega>> Re: Разбить столбец со значениями на несколько столбцов
2013-04-19 12:50 http://forum.msexcel.ru/index.php?action=profile;u=
ZaS2jah0, здравствуйте
Честно говоря, я вообще не понял  какая связь между двумя книгами ?!
Единственный одноименный столбец "Профиль ", который имеет разную текстовую информацию
Цитировать
Нужно из одного столбца С получить три столбца, в первом из которых будет 6, во-втором 170, в-третьем 343.

Выделяете Столбец "Профиль"
Не снимая выделения - Данные - Текст по столбцам - С разделителем - Далее - Символом разднлителя является: другой x  - Далее - Готово
P.S.
В качестве разделителя используется "x" в английской раскладке


runner>> Сохранение файла в текстовом формате с именем взятым из ячейки
2013-04-19 12:54 http://forum.msexcel.ru/index.php?action=profile;u=
Добрый день!
Нужно сохранить файл, с названием взятым из ячейки B1
(выглядеть должно как 20130419мотомир.txt)

в формате:
Текстовые файлы (с разделителями табуляции)

например, в папку:
C:\Users\Иванов\Documents\Заказы

VBA для меня пока = [записал макрос - посмотрел пошагово как работает - попытался что-то скорректировать] параллельно смотрю книжку.

Если мой вопрос совсем чайницкий - ткните носом, пожалуйста, куда посмотреть. Поиском по форуму похожего не нашёл.

0mega>> Re: Office 2007. Линейка инструментов
2013-04-19 12:54 http://forum.msexcel.ru/index.php?action=profile;u=
Александр, спасибо.
 Вечером отпишусь , сейчас нет возможности проверить

Poltava>> Re: нумерация строк
2013-04-19 13:02 http://forum.msexcel.ru/index.php?action=profile;u=
B5<>B4 это логическое выражение то есть оно возвращает true/false но при проведении математических операций true/false преобразуется в 1/0 ведь математика только числами оперирует! Эта особенность часто применяется скажем еще для преобразования текстового значения "12.06.15" в дату ="12.06.15"*1 это уже будет не текстом а датой и с ней можно будет работать как с датой.

_Boroda_>> Re: Разбить столбец со значениями на несколько столбцов
2013-04-19 13:21 http://forum.msexcel.ru/index.php?action=profile;u=
Это что у Вас за толщина получается такая - 125мм.?
Формулой
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(ПСТР(F4;2;99);"x";ПОВТОР(" ";98));{1;99;197};98))

Poltava>> Re: Сохранение файла в текстовом формате с именем взятым из ячейки
2013-04-19 14:00 http://forum.msexcel.ru/index.php?action=profile;u=
Топорно но это второе что пришло в голову. Первым было SaveCopyAs но я удивился не обнаружив в этом методе возможности задания формата файла.
Option Explicit
Sub СохранитьАктивныйЛистКакТекстовыйФайл()
    Dim WbFname$, TFname$, Twb As Workbook
    ActiveWorkbook.Save 'Сохраняем активную книгу
    WbFname = ActiveWorkbook.FullName 'Запоминаем путь к активной книге
    TFname = Range("B1").Value 'Формируем имя файла
    'Сохраняем книгу при этом активная книга закрываеться и открываеться сохраненная
    ActiveWorkbook.SaveAs Filename:=TFname, FileFormat:=xlText, CreateBackup:=False
    Set Twb = ActiveWorkbook 'Запоминаем активну книгу в переменную
    Workbooks.Open WbFname 'Открываем ту книгу которая была активной
    Twb.Close False 'Закрываем книгу из переменной
End Sub


runner>> Re: Сохранение файла в текстовом формате с именем взятым из ячейки
2013-04-19 14:16 http://forum.msexcel.ru/index.php?action=profile;u=
Отлично работает!
Один вопрос=пожелание - как, всё-таки, сохранять файл не там где он есть, а там куда надо, просто прописав путь в макросе?

Poltava>> Re: Сохранение файла в текстовом формате с именем взятым из ячейки
2013-04-19 14:31 http://forum.msexcel.ru/index.php?action=profile;u=
TFname = Range("B1").Value 'Формируем имя файлая же вроде прокомментировал код
TFname = "C:\" & Range("B1").Value

runner>> Re: Сохранение файла в текстовом формате с именем взятым из ячейки
2013-04-19 14:50 http://forum.msexcel.ru/index.php?action=profile;u=
Я в восторге!
Отдельное спасибо за подробности!


edmar07>> Re: Подстановка даты
2013-04-19 16:38 http://forum.msexcel.ru/index.php?action=profile;u=
Еще актуально?

Да да да!!!

Serge 007>> Re: Office 2007. Линейка инструментов
2013-04-19 16:50 http://forum.msexcel.ru/index.php?action=profile;u=
Как это лечится ?
Ctrl+F1

Ро Ро>> Re: Автоматическое добавление строк из одного листа в другой
2013-04-19 17:14 http://forum.msexcel.ru/index.php?action=profile;u=
У меня есть вопрос, примерно по этой теме.
Есть два листа. Првый лист смета, второй акт. Можно ли сделать так что бы при удалении строки в смете автоматически удалялась строка и в акте.

Владимир Ананевич>> Сравнение и замена текста внутри ячейки на текст из базы
2013-04-19 17:28 http://forum.msexcel.ru/index.php?action=profile;u=
Привет всем!
 В прикрепленном файле есть в документа.
 Первый файл - это документ, в котором должен работать макрос.
 Второй файл - база с фрагментами текстов.
 Задача следующая:
 Необходимо найти в первом документе определенный текст, находящийся во втором файле в столбце А ("Старые ссылки") и заменить найденный текст текстом из столбца В ("Новые ссылки").

 Нюансы:
 Поиск фрагмента текста нужно проводить по всему листу, а не по конкретному столбцу.
 Со временем во втором файле будут добавлятся новые изменение, тоесть количество строк будет рости.
 Размер текста в первом файле будет сравнительно не большой, поэтому обрабатывать очень большие данные макросу не придется, но он будет работать часто, так как этих файлов будет достаточно много. Именно с этих соображений и хочется иметь такой макрос.
В принципе, базу с искомым текстом и его наследником можно создать прямо в макросе. таких фрагментов будет не более 20. много места не займут
 Заранее большое спасибо за помощь!

ZaS2jah0>> Re: Разбить столбец со значениями на несколько столбцов
2013-04-19 20:07 http://forum.msexcel.ru/index.php?action=profile;u=
Это что у Вас за толщина получается такая - 125мм.?
это FineReader ошибся при сканировании. должно быть t25.

ZaS2jah0>> Re: Разбить столбец со значениями на несколько столбцов
2013-04-19 20:10 http://forum.msexcel.ru/index.php?action=profile;u=
P.S.
В качестве разделителя используется "x" в английской раскладке
Вот за это спасибо. Теперь понял, почему не получалось. Правку делал в русской раскладке. Поэтому решил, что и символ х в данном случае тоже должен быть в русской. И разбивки не происходило.
Теперь все получилось.

Tania>> Re: Помощь в объединении двух книг
2013-04-19 22:03 http://forum.msexcel.ru/index.php?action=profile;u=
Tania, для личной переписки на форуме возможностей хватает. Удалил Ваше сообщение. С уважением, Сергей.

Poltava>> Re: Сохранение файла в текстовом формате с именем взятым из ячейки
2013-04-19 23:38 http://forum.msexcel.ru/index.php?action=profile;u=
Если код будет в персонале либо в книге не являющейся экспортируемой то можно записать так
Option Explicit
Sub СохранитьАктивныйЛистКакТекстовыйФайл()
    Dim WbFname$, TFname$, Twb As Workbook
    ActiveWorkbook.Save 'Сохраняем активную книгу
    WbFname = ActiveWorkbook.FullName 'Запоминаем путь к активной книге
    TFname = Range("B1").Value 'Формируем имя файла
    'Сохраняем книгу при этом активная книга закрываеться и открываеться сохраненная
    ActiveWorkbook.SaveAs Filename:=TFname, FileFormat:=xlText, CreateBackup:=False
    Set Twb = ActiveWorkbook 'Запоминаем активну книгу в переменную
    ActiveWorkbook.Close False 'Закрываем книгу из переменной
    Workbooks.Open WbFname 'Открываем ту книгу которая была активной
End Sub

boa>> Re: Как сразу удалить все пользовательские стили ячеек в Excel 2007?
2013-04-20 00:44 http://forum.msexcel.ru/index.php?action=profile;u=
1. Переименовать расширение xlsx в zip.
2. Открыть архиватором.
3. Удалить из папки xl файл styles.xml
4. Обратно переименовать zip в xlsx.
5. В открывшемся файле не будет никого форматирования стилями ячеек
..."
можно не заморачиваться с переименованием, а просто открыть файл архиватором через меню [abbr=клик правой кнопкой мыши]ПКМ[/abbr] "Открыть с помощью..."

_Boroda_>> Re: Разбить столбец со значениями на несколько столбцов
2013-04-20 01:44 http://forum.msexcel.ru/index.php?action=profile;u=
Теперь все получилось.
Вы зря мой приложенный файл не посмотрели. Там отсекается и ошибка файнридера, и лишние значения в первом столбце при разбивке по столбцам.

sozidatellll>> Подтягивание данных в зависимоти от нескольких условия по тарифной сетке.
2013-04-21 17:46 http://forum.msexcel.ru/index.php?action=profile;u=
Добрый день! Есть таблица с Данными по региону, в зависимоти от региона и суммы, нужно выбрать в тариной сетке по диапазону % ставку.

Пример (во вложении):

1. На лист "Регионы" с листа "Банки" нужно подтянуть банк (что не проблема) в столбец "С"
2. Проблемой является после определения банка определить ставку по сумме в зависимости от диапазона (вилки) и подтянуть в столбец "D"

Заранее спасибо за помощь.

DV68>> Re: Подтягивание данных в зависимоти от нескольких условия по тарифной сетке.
2013-04-21 18:08 http://forum.msexcel.ru/index.php?action=profile;u=
Можно так:

sozidatellll>> Re: Подтягивание данных в зависимоти от нескольких условия по тарифной сетке.
2013-04-21 18:51 http://forum.msexcel.ru/index.php?action=profile;u=
 :) Спасибо огромное, очень помогло.

0mega>> Re: Office 2007. Линейка инструментов
2013-04-22 07:55 http://forum.msexcel.ru/index.php?action=profile;u=
Сергей, спасибо
Очень действенный способ

Natalia>> Объединение данных из нескольких строк в одной ячейке
2013-04-22 10:51 http://forum.msexcel.ru/index.php?action=profile;u=
Уважаемые знатоки!
Очень нужна помощь в объединении данных из ячеек в нескольких строках в одну ячейку.
Во вложении примеры и нужные результаты.

NooBasTiK>> Re: Создание базы данных
2013-04-22 14:28 http://forum.msexcel.ru/index.php?action=profile;u=
Всем спасибо кто откликнулся, победил работу, поставят access. Осталось только access изучить  ;D

dioff>> Посчитать значения в 3-х строках
2013-04-22 16:52 http://forum.msexcel.ru/index.php?action=profile;u=
Есть три строки нужно посчитать значения в них. т.е если в столбце в одной их трех ячеек есть любое число, то считать это поле(из трех ячеек) за еденицу, в итоге все такие еденицы сложить. Пробовал функцией СЧЁТЕСЛИ -она считает каждое значение.Пример прилагаю.

Serge 007>> Re: Посчитать значения в 3-х строках
2013-04-22 17:48 http://forum.msexcel.ru/index.php?action=profile;u=
Так можно:
=СУММПРОИЗВ(--((ЕЧИСЛО(D2:AH2)+ЕЧИСЛО(D3:AH3)+ЕЧИСЛО(D4:AH4))>0))

Вадя>> Заполнить столбец
2013-04-22 22:02 http://forum.msexcel.ru/index.php?action=profile;u=
Добрый день!
Помогите решить проблему.
Во вложении файл с данными. На вкладке "Значения" данные уникальных городов. Трудность состоит в том, что нужно заполнить на вкладке "Данные" данными с вкладки "Значения" только уникальные города, повторяющиеся города оставить пустыми.

ShAM>> Re: Заполнить столбец
2013-04-22 22:24 http://forum.msexcel.ru/index.php?action=profile;u=
Вы бы показали в файле, что должно получиться. А то не понятно, что заполнять, что не заполнять?


Вадя>> Re: Заполнить столбец
2013-04-22 22:39 http://forum.msexcel.ru/index.php?action=profile;u=
На вкладке данные значения заполнить только 1-му уникальному городу, остальные оставить пустыми.
Например:
Киев - 5
Киев
Киев
Донецк-3
Донецк
....

ShAM>> Re: Заполнить столбец
2013-04-22 22:57 http://forum.msexcel.ru/index.php?action=profile;u=
Так?

Вадя>> Re: Заполнить столбец
2013-04-22 23:04 http://forum.msexcel.ru/index.php?action=profile;u=
Логика верна, но когда я хочу протянуть формулу вниз, заполняются все ячейки. А как заполнить только уникальные? Нет формулы попроще?

Hugo121>> Re: Объединение данных из нескольких строк в одной ячейке
2013-04-22 23:21 http://forum.msexcel.ru/index.php?action=profile;u=
Если немного приложить руки и UDF, то используя номера можно так.
Как заполнить номерами пустоты - http://planetaexcel.ru/techniques/2/96/
Далее извлекаем из диапазона уникальные, склеиваем строки.

Если без номеров - спецмакрос нужно писать.

ShAM>> Re: Заполнить столбец
2013-04-22 23:21 http://forum.msexcel.ru/index.php?action=profile;u=
Цитировать
Логика верна, но когда я хочу протянуть формулу вниз, заполняются все ячейки. А как заполнить только уникальные?
А что у меня не так? Вроде, протягивается. Или Вы думаете, что я формулу отдельно в каждую ячейку забивал? :)

Цитировать
Нет формулы попроще?
Есть. Не массивная.
=ЕСЛИ(СЧЁТЕСЛИ(A$1:A1;A1)=1;ВПР(A1;Значение!$A$1:$B$8;2;);"")В ячейку В1 и тяните вниз.


Вадя>> Re: Заполнить столбец
2013-04-22 23:27 http://forum.msexcel.ru/index.php?action=profile;u=
Огромное спасибо!
Эта формула более понятная, все получилось :)

dioff>> Re: Посчитать значения в 3-х строках
2013-04-23 08:46 http://forum.msexcel.ru/index.php?action=profile;u=
Спасибо. всё работает!!!

Natalia>> Re: Объединение данных из нескольких строк в одной ячейке
2013-04-23 09:13 http://forum.msexcel.ru/index.php?action=profile;u=
Уважаемый, Hugo121!
 Я умею заполнять пустоты. А что такое UDF? И у Вас там какая-то пользовательская VLOOKUP???

Natalia>> Re: Объединение данных из нескольких строк в одной ячейке
2013-04-23 09:22 http://forum.msexcel.ru/index.php?action=profile;u=
Уважаемый, Hugo121!
Прошу прощения, что сразу не порылась в Excel. Я у себя эту VLOOKUP тоже нашла!
Макросы не умею писать. Но подумала, что можно дописать ф-лу там, где нет номеров и присвоить их, ориентируясь на пустоты.
Спасибо большое!!!
Буду работать дальше.

dioff>> Сумма числовых и текстовых значений
2013-04-23 11:42 http://forum.msexcel.ru/index.php?action=profile;u=
В диапазоне встречаются и текстовые значения(например В9) и числовые(например 10).Нужно найти сумму 9+10.
Во вложенном файле получилось реализовать только подсчет текстовых значений.

Михаил С.>> Re: Сумма числовых и текстовых значений
2013-04-23 11:53 http://forum.msexcel.ru/index.php?action=profile;u=
=СУММ(ЕСЛИ(ЕЧИСЛО(D1:AH1);D1:AH1;ЗНАЧЕН(0&ПСТР(D1:AH1;2;2))))

DV68>> Re: Сумма числовых и текстовых значений
2013-04-23 13:01 http://forum.msexcel.ru/index.php?action=profile;u=
если только "в", то так:
=СУММПРОИЗВ(--ПОДСТАВИТЬ(0&D1:AH1;"в";))если нет, то еще вариант:
=СУММПРОИЗВ(--(0&ПСТР(D1:AH1;1+ЕОШ(-D1:AH1);2)))

interseptor>> Re: Функции сравнения в Excel? Выбор ближайшего большего значения
2013-04-23 14:08 http://forum.msexcel.ru/index.php?action=profile;u=
Цитировать
Есть столбец с данными,например:


26      56       значение: ближайшее большее
37
21
67
46
                               

есть число полученное в результате расчета, к примеру - 56, так вот не могу задать формулу, чтобы сравнив автоматически 56 с каждым числом из столбца, нашлось ближайшее большее число и в результате отобразило его.
решение:
Цитировать
Формула массива:
=МАКС(ЕСЛИ(A1:A5<B1;A1:A5))

B1 - Ваше число для сравнения(56)
A1:A5 - диапазон чисел.
Ввод формулы завершается сочетанием клавиш Ctrl+Shift+Enter
и для ближайшего большего:
Цитировать
=МИН(ЕСЛИ(A1:A5>B1;A1:A5))
всё работает чудненько.

Вопрос: как изменить эти формулы массива, если необходимо выполнение еще одного условия???
т.е. в указанной задаче, есть еще один вертикальный столбец с собственными значениями, при выполнении условия по одному из них (только равенство) "срабатывали" указанные формулы массивов...
пробовал типа:
{=МИН(ЕСЛИ(И(С1:С5=D1;A1:A5>B1);A1:A5))}
но не работает...

cheshiki1>> Re: Функции сравнения в Excel? Выбор ближайшего большего значения
2013-04-23 14:30 http://forum.msexcel.ru/index.php?action=profile;u=
может файл покажите с вашими наработками и подробней опишите.

dioff>> Re: Сумма числовых и текстовых значений
2013-04-23 14:56 http://forum.msexcel.ru/index.php?action=profile;u=
спасибо!!!всё работает. буду благодарен если поясните значение этого симовла "&" в формуле

interseptor>> Re: Функции сравнения в Excel? Выбор ближайшего большего значения
2013-04-23 15:00 http://forum.msexcel.ru/index.php?action=profile;u=
пример прикрепил.

NooBasTiK>> Re: Сумма числовых и текстовых значений
2013-04-23 16:04 http://forum.msexcel.ru/index.php?action=profile;u=
Это вместо функции =СЦЕПИТЬ()

Мария Смирнова>> Надстройка Монте-Карло в Excel
2013-04-23 16:48 http://forum.msexcel.ru/index.php?action=profile;u=
Привет!
Помогите при помощи надстройки Монте-Карло найти оптимальную структуру портфеля дебиторской задолженности. Я как не старалась, не могу понять, как это сделать. В качестве исходных данных применяется стоимость текущей задолженности с учетом рисков (прикреплено).
Помогите пожалуйста!
P.S. Если можно, то решение этой задачи пришлите поэтапно.

cheshiki1>> Re: Функции сравнения в Excel? Выбор ближайшего большего значения
2013-04-23 16:53 http://forum.msexcel.ru/index.php?action=profile;u=
макс - =МИН(ЕСЛИ(($B$1:$B$21=D1)*($A$1:$A$21>=E1);$A$1:$A$21;""))
мин - =МАКС(($B$1:$B$21=$D$1)*($A$1:$A$21<=$E$1)*$A$1:$A$21)


interseptor>> Re: Функции сравнения в Excel? Выбор ближайшего большего значения
2013-04-23 17:08 http://forum.msexcel.ru/index.php?action=profile;u=
заработало  :D
пасибо sm_clap

Воздушные-Шары В-Нижнем-Новгороде>> помогите решить задачку по excel за небольшое вознаграждение
2013-04-23 19:38 http://forum.msexcel.ru/index.php?action=profile;u=
Здраствуйте! помогите пожалуйста решить задачу и на пальцах объяснить мне как она решена чтобы я потом смогла повторить её сама. Задача во вложении. Заранее спасибо!

mariegu>> vlookup по нескольким критериям с функцией match и массивом
2013-04-23 20:09 http://forum.msexcel.ru/index.php?action=profile;u=
Всем добрый день! Пожалуйста, подскажите, есть ли возможность подтянуть с одного листа данные в другой лист по 3-м критериям в [abbr=Вводится через Ctrl+Shift+Enter]формулу массива[/abbr]? Пример файла во вложении. Буду очень благодарна за любую помощь и подсказки. на 2-м листе основная таблица. Есть артикул "123", есть локация "z1". есть сток "E5". на 1-м листе есть понедельный план(но по разным локациям), надо понять на сколько дней покрывает сток в ячейке E5 именно по данной локации, т.е. "z1".

Hugo121>> Re: Объединение данных из нескольких строк в одной ячейке
2013-04-23 22:50 http://forum.msexcel.ru/index.php?action=profile;u=
UDF - User Defined Function - http://en.wikipedia.org/wiki/User-defined_function
Т.е. функция, определённая пользователем.
Если трудно подобрать что-то из стандартных - всегда можно написать свою :)

Natalia>> Re: vlookup по нескольким критериям с функцией match и массивом
2013-04-24 09:05 http://forum.msexcel.ru/index.php?action=profile;u=
Не совсем понятен вопрос!
В примере, что нужно вытянуть в COVER? Даты имеют значение или ориентироваться только на числа? Если важны даты, тогда должна быть отформатированная в таком виде дата, а не текст.
И почему обязательно [abbr=Вводится через Ctrl+Shift+Enter]формула массива[/abbr]? Можно и без массива с SUMPRODUCT.


IKor>> Re: Объединение данных из нескольких строк в одной ячейке
2013-04-24 12:55 http://forum.msexcel.ru/index.php?action=profile;u=
А если трудно писать свою, то можно использовать дополнительные ячейки :)

0mega>> 2n=нечет
2013-04-24 13:35 http://forum.msexcel.ru/index.php?action=profile;u=
доброго времени суток
2003
Надо в RND-оме выдать четные числа
Чтобы уйти от нечетных чисел =СЛЧИС() , для этого умножаю на 2 (сумма 2-х одинаковых чисел всегда будет чёт)
=СЛЧИС()*2
Чтобы числа не повторялись - умножаю еще на 1 000 000
=СЛЧИС()*2*1000000 и выделяю целую часть
=ЦЕЛОЕ(СЛЧИС()*1000000)*2 =ЦЕЛОЕ(СЛЧИС()*2000000)


В итоге получаются нечетные  числа ?!

P.S.
И еще 1 вопрос :
Есть ли в 2003-ем функции ЧЁТН() и  НЕЧЁТ() ?


IKor>> Re: 2n=нечет
2013-04-24 14:03 http://forum.msexcel.ru/index.php?action=profile;u=
Выносите умножение на 2 за пределы функции ЦЕЛОЕ()
Иначе у вас могут выпадать дробные значения (например: 5,6), которые при умножении на 2 и округлении вниз (функция ЦЕЛОЕ возвращает ближайшее меньшее целое значение) возвратят нечетное значение.

Сравните:
ЦЕЛОЕ(5,6)*2 => 5*2 => 10
ЦЕЛОЕ(5,6*2) => 11,2 => 11

В Экселе есть функции ЕЧЁТН() / ЕНЕЧЁТ(), которые возвращают значения ИСТИНА / ЛОЖЬ в зависимости от своего аргумента


На сегодня все. До встречи на следующей неделе.


В избранное