Покупатель - номер телефона - почта - адрес - заказ - сумма - способ доставки (реальный шаблон таблицы другой и значительно больше). Нужно привести его к другому виду. Например (чтобы понять примерно какие изменения):
Заказ-сумма-адрес-номер телефона (то есть колонки переставляются местами, некоторые данные откидываются, некоторые компонуются в одну колонку).
Хочу получить макрос, который будет выдавать мне изменённую типовую таблицу в нужном мне виде. Точнее требуется два макроса - для выгрузки из двух разных мест.
Спасибо большое за ваши ответы МатросНаЗебре. По-моему вы очень хорошо шарите, можно я обнаглею и последний раз попрошу Вас о помощи (уже не по теме топика). Больше так делать не буду, честно
Фамилия - товарная позиция - кол-во - цена товарной позиции - - общая сумма по товарной позиции - общая сумма заказа
В скобках указана цифра, которой нет, но которую нужно найти и прописать. Понятно, что сначала где-то нужно посчитать общую сумму по каждой товарной позиции, потом сложить эти суммы, а как вывести все эти суммы только только напротив тех строк, которые относятся к данному заказу
Уважаемый [USER=40767]МатросНаЗебре[/USER, не могли бы вы подсказать, как переделать макрос, чтобы нужно было не выделять область, а чтобы сортировка происходила по определенной колонке? Допустим B?
МатросНаЗебре, спасибо за Ваш ответ. Ваше решение очень помогло. Не могли бы дать подсказки по вашему коду, правильно ли я всё понял. Вдруг придётся редактировать под свои потребности?
Код
Sub Совершить_действие_вставляющего_характера()
Dim a As Variant //создаётся переменная a типа Variant (то есть тип данных не выбран)
a = Selection.Columns(1) // a = выбранное сейчас значение (ячейка) в колонке 1
Dim y As Long //создаётся тип данных типа long (целые числа)
For y = UBound(a, 1) To 2 Step -1 //Цикл. Перебирается массив с колонкой a (т.е. первой) и двигается к 2 (те. Ubound(a,2)?? Почему шаг отрицательный? Перебор идёт с конца колонки? Где на это указание?
If a(y, 1) <> a(y - 1, 1) Then //если значение y, 1 не равно y-1,1
Selection.Rows(y).Resize(2).Insert Shift:=xlDown //вставить две строки выше текущей (y)
End If
Next
End Sub
Наверное, странно и непонятно звучит вопрос. Попробую объяснить мой вопрос на примере. Есть список покупателей в следующем виде
Иванов - роза красная - 1 Иванов - роза голландская - 2 Иванов - тюльпан - 1 Иванов - хризантема - 3 Петров - роза красная - 1 Петров - хризантема - 3 Сидоров - роза красная - 3 Сидоров тюльпан - 4 Сидоров - хризантема - 2
(необольшое отступление. По факту это 3 заказа, 3 разных людей с несколькими позициями у каждого). Сам вопрос. Как произвести итерацию по столбцу с фамилией и отделить разные заказы друг от друга, например отступлением в 3 строки? Чтобы на выходе получилось: Иванов - роза красная - 1 Иванов - роза голландская - 2 Иванов - тюльпан - 1 Иванов - хризантема - 3
т.е. как реализовать алгоритм, который будет сравнивать текущую ячейку с предыдущей и в случае несовпадения совершать действие? В данном случае вставлять 2 строки
Кошмаааааар( Ничего не понятно. А никто не мог бы помочь с примером номер 15? 0.38 и 1.08 это икс, 7.4 и 5 это игрик. Чтобы представлять как это вообще делается? Просто после прочтения про функции ниичееееееегошеньки непонятно((
Посмотрел по диагонали. Попробую разобраться завтра. Но... скажите, я правильно понимаю, что это должно выглядеть примерно так =КОРЕНЬ(SIN(60) - COS(25))?? Т.е. сама формула не пишется, а описывается командами?
Если это так, то подскажите, как обозначать неизвестной? x,y и т.д.
Здравствуйте. Если честно я являюсь заочным студентом гуманитарной специальности и ранее с Экселем работал на уровне простейших операций. И вот по информатики задали контрольную, что...можно просто с ума сойти. Пробовал гуглить - ничего не получилось. Может быть вы сможете помочь.
В общем суть вопроса - как вносить сложные математические формулы в Эксель. И как сделать так,чтобы они считались? Формулы примерно такого формата http://joxi.ru/12MZMvDS4JndzA
Можете или подсказать как начать или дать ссылку на то что стоит почитать. Заранее спасибо