Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 4 5 След.
Частичный импорт данных из CSV в эксель
 
Цитата
Hugo написал:
ActiveCell.Resize(1, 11) = Application.Transpose(out)

Большое спасибо вам за помощь! Второй вариант - то, что нужно  :)
Частичный импорт данных из CSV в эксель
 
Спасибо! :)
Единственное, только чтобы он не новую книгу создавал, а вставлял данные в текущую книгу и лист, справа от выделенной ячейки в столбцы
Ну, то есть, в одну строку

Изменено: Verticalx - 15.05.2025 14:55:13
Частичный импорт данных из CSV в эксель
 
Здравствуйте,

Есть простая задача, но не получается ее решить стандартными средствами (импорт из текстового файла и с помощью PowerQuery)

Есть файл 1.csv (лежит на рабочем столе)

Если его открыть в экселе, то он будет выглядеть так:


Нужен какой-то скрипт или набор команд или макрос, который из этого CSV файла будет вытаскивать значения, соответствующие ячейкам B2,B4,B25,B24,B31,B39,B38,B11,B10,B15,B16
и вставит их последовательно в новую книгу (из которой запущен макрос), в текущий лист, справа от выделенной ячейки включительно последовательно, в строку.

При этом не открывая исходный CSV файл в экселе

Не подскажите, как такое реализовать?

Спасибо
Определение ценового диапазона, выбор из него значений по условиям, расчет стоимости по выбранным значениям и условиям
 
По результату отсутствия откликов задание размещено на других специализированных ресурсах. Тему можно закрыть.
Изменено: Verticalx - 23.12.2024 14:31:18
Определение ценового диапазона, выбор из него значений по условиям, расчет стоимости по выбранным значениям и условиям
 
По результату отсутствия откликов задание размещено на других специализированных ресурсах. Тему можно закрыть.
Изменено: Verticalx - 23.12.2024 14:31:34
РАспределение остатка от деления, разными способами
 
Спасибо! Есть небольшой нюанс в Типе №2, но а так - работает!

Написал вам в личные сообщения
РАспределение остатка от деления, разными способами
 
Цитата
Msi2102 написал:
Точно 14 ячеек?

Ячеек 14, диапазон исправил
РАспределение остатка от деления, разными способами
 
Здравствуйте!

Есть такая таблица:

Исходник.xlsx

в которой B6:B25 - это диапазон, заполненный числами. В нем мосжет быть заполнено минимум 2 и максимум 20 ячеек.
В текущем случае это диапазон B6:B19, то есть заполнено 14 ячеек

Необходимо распределить по этим числам точки, количество которых указано в ячейке K36.

распределение происходит путем деления количества точек в K36 на количество заполненных ячеек в диапазоне B6:B25 (ячейка I2)
В результате этого деления получается число с целой и дробной частью. Целая часть этого числа указана в ячейке H5, дробная (остаток) - в ячейке I5.

С целой частью все понятно, она просто распределяется по всем соседним от диапазона B6:B25 ячейкам, которые являются непустыми.
В данном случае это диапазон C6:С19.

Проблема с дробной частью (остатком)..(ячейка I5), ее нужно как-то распределить тремя способами по числам и приплюсовать к целой части.

Тип №1: распределить остаток сверху вниз последовательно:

Число 1 распределяется сверху вниз в количестве, указанном в I5. Можно сделать с помощью заполнения промежуточного столбца, но нужно этого избежать

Тип №2: распределить остаток сверху вниз равномерно от границы:

Этот способ хорошо работает в отдельном файле "От границы.xlsx", но как его вывести в отдельную формулу, я даже не знаю как подступиться

Тип №3: распределить остаток равномерно во всем диапазоне:

Нужно сделать что-то похожее, что делает функция РАСПРЕД. Но как ее заставить распределять одно и тоже число расвномерно среди имеющегося множества чисел - непонятно 8-0

В итоге должно получаться вот такое:



Буду благодарен за любые наводки.

Есть мысли, как это сделать с помощью промежуточных таблиц, но этого хотелось бы избежать, сделать все формулами и без VBA
Все скриншоты есть в файле Исходник.xlsx на разных листах


Заранее спасибо
Изменено: Verticalx - 17.12.2024 18:35:27
Выбор значений внутри числового диапазона
 
Цитата
БМВ написал:
=MROUND(30+(SEQUENCE(8)-1)*30/(8-1);2)   -    =MROUND(30+(SEQUENCE(8)-1)*(60-30)/(8-1);2)=ОКРУГЛТ(75,01+(ПОСЛЕД(9)-1)*(76-75,01)/(9-1);0,01)

Спасибо еще раз. Теперь понятно. Работает отлично
Изменено: Verticalx - 15.12.2024 15:45:57
Выбор значений внутри числового диапазона
 
Цитата
testuser написал:
Спасибо за код на VBA, тоже пригодится!
Изменено: Verticalx - 15.12.2024 13:59:59
Выбор значений внутри числового диапазона
 
Цитата
БМВ написал:
по конкретным цифрам 30, 60 ,2  - (60-30)/2+1 =16 чисел  на этом отрезке не более. 8 <6 значит ок.

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

Цитата
БМВ написал:
8 чисел - это 7 промежутков 30+(N-1)*30/(8-1)

технически не понял этот момент, что за промежутки в количестве 7? Если отрезков между всеми распределенными значениями в диапазоне, то получается 9:


Цитата
БМВ написал:
=MROUND(30+(SEQUENCE(8)-1)*30/(8-1);D2)

Работает как часы! Заодно больше узнал про функцию ПОСЛЕД и формулы массива. Первый раз вижу массивы в действии. В сочетании с функцией ОКРУГЛТ под мои задачи подходит, благодарю!

НО

есть один нюанс, функция ПОСЛЕД отсчитывает диапазон с заданным шагом. А как в формуле прописать диапазон фиксированно, чтобы там фигурировали его начало (30) и конец (60)?
К примеру, начало диапазона - 75,01 конец - 76. Шаг - 0,01. Нужно найти 9 равноудаленных друг от друга значений

Я ввожу формулу
Код
=ОКРУГЛТ(75,01+(ПОСЛЕД(9)-1)*75,01/(9-1);0,01)

Но выходит что-т не то
Изменено: Verticalx - 15.12.2024 13:59:24
Выбор значений внутри числового диапазона
 
Добрый день

Есть числовой диапазон от 30 до 60 (включительно). Минимальный интервал между числами - 2, т.е:
30,32,34,36 ..... 52, 54, 56, 58, 60.

Нужно найти, например, 8 таких значений в этом диапазоне, которые максимально равномерно распределены внутри него:



Возможно ли это сделать с помощью стандартных функций Excel и запомнить эти значения?
Сравнение значения ячейки с её отображаемым значением даёт ЛОЖЬ
 
Цитата
Artur B. написал:
Проблема не Excel, а в целом двоичной системы счисления.

Да, оно самое(

Цитата
Artur B. написал:
Только задавать требуемую точность знаками после запятой.

Будем как-то пробовать, других вариантов, похоже нет..
Сравнение значения ячейки с её отображаемым значением даёт ЛОЖЬ
 
Цитата
Sanja написал:
Ну Вы же для чего-то акцентировали на этом

Мне предложили попробовать:

Цитата
nilske написал:
попробуйте делимое вычислить в строке формул отдельно - выделите и нажмите F9  )

Я попробовал, но при нажатии F9 ничего не произошло. Часто бывает, что клавиши или сочетания клавиш на Win не работают на Mac, либо в маке для них другие сочетания. Поэтому я написал что у меня эксель для MAC, подразумевая что это может быть причиной того, что F9 не сработал:

Цитата
Verticalx написал:
Прописываю в ячейке =A1-A2. Затем выделяю эту ячейку и нажимаю F9. Ничего не происходит. У меня Excel для MAC если что

Это частность, к проблеме этой темы не имеющая отношения.
Сравнение значения ячейки с её отображаемым значением даёт ЛОЖЬ
 
Цитата
nilske написал:
а почему не хотите округлять промежуточные или итоговый результаты, как выше подсказали?либо в самом сравнении, хоть до одиннадцати зпз в данном случае  )=ОКРУГЛ(A4;11)=1

Так я за округление, наоборот, тем более тут других выходов-то и нет. Так и буду делать.
Дело в том, что нужно знать когда там действительно строго единица в частном. А если при делении вдруг будет 0,999999999999091, которое потом будет округлено до единицы, то получиться, что расчет/сравнение было неверным. Хотя такое маловероятно, конечно, но и палка раз в год стреляет
Изменено: Verticalx - 13.12.2024 12:34:21
Сравнение значения ячейки с её отображаемым значением даёт ЛОЖЬ
 
Цитата
Hugo написал:
Verticalx , выше тоже почитайте...

Да, я понял что это та самая проблема с округлением. Просто теперь непонятно что с этим со всем делать :cry:
Сравнение значения ячейки с её отображаемым значением даёт ЛОЖЬ
 
Цитата
Sanja написал:
для счастливчиков есть отдельная ветка. Перенесено

Вопрос про общую проблему экселя с округлением. Эксель для мак тут не причем.
Эта отдельная ветка абсолютна неликвидна. Не говоря о том, что проблема не привязана к платформе
Изменено: Verticalx - 13.12.2024 10:15:54
Сравнение значения ячейки с её отображаемым значением даёт ЛОЖЬ
 
Цитата
nilske написал:
попробуйте делимое вычислить в строке формул отдельно - выделите и нажмите F9  )

Прописываю в ячейке =A1-A2. Затем выделяю эту ячейку и нажимаю F9. Ничего не происходит. У меня Excel для MAC если что


В A5 стоит формула, которая проверяет ячейку A4 и если ее значение =1, то она потом выдает ошибку.

Как тогда правильно прописать сравнение в A4 ?
Сравнение значения ячейки с её отображаемым значением даёт ЛОЖЬ
 
Добрый день,

Непонятное от Экселя, прошу подсказать почему A4 отображает ЛОЖЬ?

Код
A1: 70,02
B2: 70,01
B1: 0,01

A4: =(A1-A2)/B1
A5: =A4=1


Почему значение ИСТИНА, ИЛИ выдает ИСТИНА, когда все ЛОЖЬ
 
Цитата
sokol92 написал:
Число < Текст < Логическое значение

Понятно, спасибо. Ну такая себе логика, конечно. Автоподстановку в пустые ячейки "нужного" типа данных еще можно понять, а вот безошибочно сравнивать ячейки с разными типами данных, типа 1 яблоко больше 40 книг?


Цитата
sokol92 написал:
P.S. Не смешивайте понятие пустой ячейки с ячейкой, содержащей пустую строку - на эту тему на форуме много материалов.

Никакого смешивания нет, это уже пройденное
Изменено: Verticalx - 18.11.2024 17:59:26
Почему значение ИСТИНА, ИЛИ выдает ИСТИНА, когда все ЛОЖЬ
 
Еще прикол. В экселе, если в ячейке пустое значение (внутри, например, ссылка на другую ячейку, значение которой ""), то значение такой ячейки считается больше любой ячейки с числовым значением
Как тебе такое, Илон Маск
Почему значение ИСТИНА, ИЛИ выдает ИСТИНА, когда все ЛОЖЬ
 
Цитата
Hugo написал:
ИСТИНА превыше всего! Логично же ))

Тут не поспоришь  :D
Почему значение ИСТИНА, ИЛИ выдает ИСТИНА, когда все ЛОЖЬ
 
Цитата
Hugo написал:
Оказывается 85<ИСТИНА ))И строка, и 0, и ЛОЖЬ...Только ИСТИНА не меньше истины

Ну да, поэтому все это непонятно
у меня была длиннющая формула, в которой сие затесалось. Пришлось ее всю по слогам разложить, чтоб узнать что оно, оказывается, в природе экселя вот так  8-0
Почему значение ИСТИНА, ИЛИ выдает ИСТИНА, когда все ЛОЖЬ
 
То бишь, логические значения просто с адресами ячеек всегда ИСТИНА? Типа, не из чего сравнивать
А с вышестоящим условием ИЛИ получается идет сравнение числового значения с логическим. Почему ошибку не выдает тогда?
А если ошибку не выдаёт на A1 и B1, значит A1 и B1 могут быть и ложью?
Непонятная ситуация
Почему значение ИСТИНА, ИЛИ выдает ИСТИНА, когда все ЛОЖЬ
 
Добрый день

Есть такая таблица

A1 - пустая
B=80
C=85

В ячейке A2 формула:
Код
=ИЛИ(C1<ИЛИ(A1;B1))

Который выдает ИСТИНА, хотя

=C1<A1=ЛОЖЬ
и
=C1<B1=ЛОЖЬ

Если формулу в A2 поменять на
Код
=C1<ИЛИ(A1;B1)

то все равно выдаст ИСТИНА

Почему?

Нужно, чтобы если все значения вложенной функции ИЛИ в A1 были ЛОЖЬ, тогда чтоб он и возвращал ЛОЖЬ, а он непонятно почему возвращает ИСТИНА  :sceptic:

upd.
Дошло, что нужно писать
Код
=ИЛИ(C1<A1;C1<B1)

Но все равно непонятно, почему даже запись C1<ИЛИ(A1;B1) выдает ИСТИНУ
Изменено: Verticalx - 17.11.2024 13:23:45
Исключение слагаемого из формулы, при вычислении средневзвешенного значения
 
Цитата
Sanja написал:
Цитата Verticalx  написал:если ячейка С - пустая (равна 0), то...Код=ЕСЛИОШИБКА(ОКРУГЛТ(СУММПРОИЗВ(C2:C21;D2:D21)/СУММЕСЛИМН(D2:D21;C2:C21;"<>";C2:C21;"<>0");$A$2);"")Цитатаесли какая-либо ячейка столбца D - пустая (равно 0)...Это условие не будет влиять на результат, поэтому отдельно его прописывать нет смысла

Вот это да! Спасибо большое
Откуда вы все знаете?  :)
Изменено: Verticalx - 05.11.2024 16:04:31
Исключение слагаемого из формулы, при вычислении средневзвешенного значения
 
Здравствуйте

Есть таблица:


В ячейке I2 формула:

Код
=ЕСЛИОШИБКА(ОКРУГЛТ(((C2*D2)+(C3*D3)+(C4*D4)+(C5*D5)+(C6*D6)+(C7*D7)+(C8*D8)+(C9*D9)+(C10*D10)+(C11*D11)+(C12*D12)+(C13*D13)+(C14*D14)+(C15*D15)+(C16*D16)+(C17*D17)+(C18*D18)+(C19*D19)+(C20*D20)+(C21*D21))/СУММ(D2:D21);$A$2);"")


которая вычисляет средневзвешенное значение на основе данных таблицы C2:D21 и округляющая полученное значение до значения ячейки A2.

Проблема в том, что если значение ячейки столбца C не заполнено, а значение соответствующей ячейки справа - заполнено, то в формуле выше соответствующее слагаемое в числителе равняется нулю (из-за того, что число из столбца D умножается на соответствующую цену из столбца C, равную нулю). А в знаменателе кол-во как было, так и остается и учитывает все значения столбца D. И, в результате, средневзвешенное вычиляется неверно.

Нужно в формуле как-то прописать условие, что если ячейка С - пустая (равна 0), то соответствующее значение ячейки столбца D не участвовало в расчетах.

В идеале, тоже самое нужно учитывать, если какая-либо ячейка столбца D - пустая (равно 0), а соответствующая ей ячейка столбца C - непустая.

Можно перед каждым слагаемым в условии прописать условие ЕСЛИ, в знаменателе формулу СУММ расписать на слагаемые каждой ячейки и тоже там прописать формулу ЕСЛИ. Но тогда формула, которая и так громоздкая станет катастрофически громоздкой.

Может есть способы проще?

Заранее спасибо.
Вложенные формулы
 
Спасибо за ответы, буду пробовать
Вложенные формулы
 
Можно ли внутри формулы задавать переменные?

Чтоб вот такое хоть как-то сократить

Код
=ЕСЛИ(ЕПУСТО(D13);ЕСЛИ(ОКРУГЛВВЕРХ(C13*(G16*$L$6/$K$6)+(C13*(($M$6+$N$6)*2));2)=0;"Ошибка";ОКРУГЛВВЕРХ(C13*(G16*$L$6/$K$6)+(C13*(($M$6+$N$6)*2));2));ЕСЛИ(ОКРУГЛВВЕРХ(D13*(G16*$L$6/$K$6)+(D13*(($M$6+$N$6)*2));2)=0;"Ошибка";ОКРУГЛВВЕРХ(D13*(G16*$L$6/$K$6)+(D13*(($M$6+$N$6)*2));2)))
Изменено: Verticalx - 24.10.2024 23:39:41
Вложенные формулы
 
Прикольно, спасибо. Не думал что так можно

это так можно в формулах целые программы писать

Если серьезно, а нет какого-нить специализированного редактора, в котором это удобно делать?
Страницы: 1 2 3 4 5 След.
Loading...