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

Форум по Microsoft Excel

  Все выпуски  

myroslav>> Синтаксис


Форум по Microsoft Excel

Выпуск 16
от 2013-04-25

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

Рассылка сайта "Профессиональные приемы работы в 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".



myroslav>> Синтаксис
2013-04-17 10:12 http://forum.msexcel.ru/index.php?action=profile;u=
как правильно записать


Олег*>> Re: В макросе пробежаться циклом по значениям времени
2013-04-17 10:28 http://forum.msexcel.ru/index.php?action=profile;u=
...
Dim Время As Date
...
For Время = "10:00" To "15:00" Step 1 / 24
...

Спасибо!
Чёта я ступил. Забыл про существование типа даных Date и стал изобретать велосипед собственной конструкции :)
Растренерованность сказывается.
Я ж говорю,  у меня  обычно по жизни очень долго нет необходимости "лезть в мотор" своих Эксельных программ и я "катаюсь" на них совсем как обычный пользователь. Причем это время может длиться до полугода.

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

Тут недавно до прикола дело дошло. Надо было, чтобы оператор макроса ссылался на другой лист. Ну и я пишу:

"Лист5".Range("A1:C8").ClearContents
Эксель ругается, а я не пойму, чего он ругается-то. Я же вроде все ему объяснил, лист такой-то, рендж такой-то. Чего тебе еще надо-то?! :...

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

У меня сейчас код записан вот так:

    For Время = "10:00" To "11:00" Step "00:15"
   
        If Время = "10:30" Then Exit For

и я ожидаю, что в цикле будут проанализированы значения времени (с шагом 15 минут), начиная с 10:00 до 11:00 включительно, и при этом значение 10:30 будет пропущено.

А в результате получаю (см. приложенный файл time_02.xls):

№   Время
1   10:00
2   10:15
3   10:30
4   10:45

Т.е. все наоборот! :)
11:00 нет, а 10:30 есть :(

Кстати, это та самая проблема, которая заставила меня создать эту ветку. В прошлом "велосипедном" :)  варианте она тоже присутствовала.

Там я ее решал прибавлением одной секунды к конечному значению цикла и созданием некоторого "буфера" вокруг исключаемого из цикла значения, т.е.

[code]    For Время = Csgl(TimeValue("10:00")) To Csgl(TimeValue("11:00")) + Csgl(TimeValue("00:00:01"))  Step Csgl(TimeValue("00:15"))
   
                   If Время > Csgl(TimeValue("10:...

_Boroda_>> Re: В макросе пробежаться циклом по значениям времени
2013-04-17 11:34 http://forum.msexcel.ru/index.php?action=profile;u=
Олег, По поводу листов - специально ради Вас  :) создал темку-опрос. Если хотите - подождите ответов, если загорелось срочно - пишите в личку, отвечу там.

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


Олег*>> Re: В макросе пробежаться циклом по значениям времени
2013-04-17 12:11 http://forum.msexcel.ru/index.php?action=profile;u=
Олег, По поводу листов - специально ради Вас  :) создал темку-опрос. Если хотите - подождите ответов, если загорелось срочно - пишите в личку, отвечу там.
Да нет, по поводу листов у меня нет на данный момент никаких вопросов, сам вспомнил и легко разобрался. У меня сейчас все вопросы исключительно по проходу в цикле по значениям времени.



Олег*>> Re: В макросе пробежаться циклом по значениям времени
2013-04-17 13:46 http://forum.msexcel.ru/index.php?action=profile;u=
Я, конечно, понимаю, почему так происходит.
Там дробные значения с определенной точностью и нет точного совпадения. Поэтому приходится создавать вокруг значения "10:45" некий буфер, чтобы Эксель понял, что если значение попало в этот интервал, его надо пропустить.

И то же самое с конечным значением цикла. Экселю не хватает какой-то малюсенькой дробной частички, чтобы понять, что значение "11:00" тоже надо анализировать.

Вопрос такой:
я эту проблему решил очень сложно и, честно говоря, мне это совсем не нравится.

А можно сделать как-нибудь иначе, попроще и полаконичнее?

Может как-нибудь округлять по-хитрому?

Serge 007>> Re: В макросе пробежаться циклом по значениям времени
2013-04-17 14:05 http://forum.msexcel.ru/index.php?action=profile;u=
Я, конечно, понимаю, почему так происходит. Там дробные значения с определенной точностью и нет точного совпадения.
Ничего подобного. 10:30 всегда равно 10:30

По Exit For осуществляется выход из цикла - это раз;
Значения в цикле так не исключаются - это два;
Верхний порог в For Вы сами уменьшаете СчетчикСтрок - 1 - это три


Олег*>> Re: В макросе пробежаться циклом по значениям времени
2013-04-17 14:53 http://forum.msexcel.ru/index.php?action=profile;u=
По Exit For осуществляется выход из цикла - это раз

Согласен! Это мое упущение. Дело в том, что в оригинальной программе (в отличие от приведенного примера) два цикла, вложенных один в другой, и при равенстве управляющей переменной внутреннего цикла значению "10:30", мы просто выходим из вложенного цикла во внешний цикл.

Ничего подобного. 10:30 всегда равно 10:30

Но, кстати, в том варианте, который выложен на форуме, программа должна при достижении значения "10:30" просто закончить свою работу, а она игнорирует это условие и продолжает как ни в чем не бывало :)


Значения в цикле так не исключаются - это два

А как?! Подскажите!
Меня сейчас совсем не интересует абстрактное теоретизирование и разработка инноваций.
Меня интересует чисто практи...

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

Есть формула:
=СУММ(A3:D3)

Но не во всех ячейках будут числа. Т.е. например может быть такой набор: (5 6 7 8), а может быть (5 6 НЕТ 7) или (ДА 3 5 НЕТ).
"НЕТ" всегда нужно заменять значением 5. "ДА" всегда нужно заменять значением 7.

(Нужно посчитать сумму, заменив "ДА" на 7, "НЕТ" на 5)

Poltava>> Re: Как заменить СЛОВО значением в формуле суммы?
2013-04-17 15:16 http://forum.msexcel.ru/index.php?action=profile;u=
Читаем правила в особенности пункт два тогда помощь придет быстрее

Serge 007>> Re: Как заменить СЛОВО значением в формуле суммы?
2013-04-17 15:21 http://forum.msexcel.ru/index.php?action=profile;u=
Решения уже есть здесь

_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=
Это вместо функции =СЦЕПИТЬ()


На форуме Вы можете получить совет по любым вопросам работы в Microsoft Excel.

Добро пожаловать на форум!


В избранное