Есть таблица, в ней столбцом указываются числа, к этим числам могут применяться простые горизонтальные формулы. После применения простых математических формул, числа попадают в столбец 2 (в данном примере они туда попадают как есть).
Между числами в 1-м столбце есть пустые ячейки. Пустая ячейка это разделитель данных. Массив данных заключен между пустыми ячейками. Требуется во втором столбце, там где пустая ячейка получить сумму всех чисел ниже в данном массиве.
Фиолетовым цветом указано место, где ставится сумма всех ячеек ниже до следующей фиолетовой ячейки.
Скриншот и таблицу, где это сделано вручную протяжкой суммы прилагаю.
Мне сложно описать задачу, так как я не понимаю в сфере статистических формул.
Есть горизонтальные ряды чисел. В основном имеется 2 вида их заполненности. Для простоты предположим, что чисел 10. 1-й вид. Практически все числа это 0 и одно число это 600 или немного больше. 2-й вид. Все 10 чисел примерно похожи между собой и нулей практически нет.
Пример: 1-й вид. 0 0 0 0 0 0 600 0 0 0 2-й вид. 62 75 96 39 86 55 77 41 39 51
Числа суммарно не всегда одинаковы.
Мне нужно с помощью какой-то (волшебной для меня) статистической формулы узнать примерную степень распределения чисел. Чем ровнее распределение на диапазон, тем больше идет стремление скажем к 1. Ну или к другому числу. В общем нужен показатель, который показывает насколько равномерно распределены числа в ряде. Протягивать длинные формулы долго, ряды длинные и их очень много. В идеале скармливать формуле диапазон и она выдает "нормальность" распределения.
Сортировка номеров телефонов по уникальности, Есть список номеров телефонов, его нужно отсортировать так чтобы номера друг за другом были наименее похожи
Сортировка номеров телефонов по уникальности, Есть список номеров телефонов, его нужно отсортировать так чтобы номера друг за другом были наименее похожи
Сортировка номеров телефонов по уникальности, Есть список номеров телефонов, его нужно отсортировать так чтобы номера друг за другом были наименее похожи
Сортировка номеров телефонов по уникальности, Есть список номеров телефонов, его нужно отсортировать так чтобы номера друг за другом были наименее похожи
Сортировка номеров телефонов по уникальности, Есть список номеров телефонов, его нужно отсортировать так чтобы номера друг за другом были наименее похожи
Сортировка номеров телефонов по уникальности, Есть список номеров телефонов, его нужно отсортировать так чтобы номера друг за другом были наименее похожи
Я нашел болячку. Спец. символы вроде ° или ². Видимо текстовики сохраняются в кодировке ANSI по умолчанию. А для адекватного сохранения спец. символов юникода нужна UTF-8 или подная кодировка.
Во вложении есть модуль, которым любезно поделился один из участников данного форума. Суть его проста, вставляем строки в первый столбец начиная с 36-ой строки, нажимаем запуск и получаем в папку, где находится модуль файлы с именами ячейки и содержимым строки.
Но есть проблема, модуль не обрабатывает длинные строки возвращая пустые файлы. Может кто-то поправить модуль, чтобы он обрабатывал длинные строки около 3000 символов? Если это задача за денги, напишите стоимость. Готов оплатить.
Вытащил код кнопки для удобства:
Код
Sub test()
Dim cell As Range
Путь = Replace(ThisWorkbook.FullName, ThisWorkbook.Name, "")
For Each cell In Selection.Cells
SaveTXTfile Путь & cell.Address & ".txt", cell
Next cell
End Sub
Function SaveTXTfile(ByVal filename As String, ByVal txt As String) As Boolean
On Error Resume Next: Err.Clear
Set fso = CreateObject("scripting.filesystemobject")
Set ts = fso.CreateTextFile(filename, True)
ts.Write txt: ts.Close
SaveTXTfile = Err = 0
Set ts = Nothing: Set fso = Nothing
End Function
Запустил excel повторно, поставил скрипт еще раз и всё заработало. Скобка экранируется и находится без проблем. Есть подозрения, что это кривые руки автора топика, то есть мои. К этому времени я уже нашел обходные пути решения всего, что не смог сделать из-за ошибок, но книжечку посоветованную почитаю.
Public Function RegExpExtract(Text As String, Pattern As String, Optional Item As Integer = 1) As String
On Error GoTo ErrHandl
Set regex = CreateObject("VBScript.RegExp")
regex.Pattern = Pattern
regex.Global = True
If regex.Test(Text) Then
Set matches = regex.Execute(Text)
RegExpExtract = matches.Item(Item - 1)
Exit Function
End If
ErrHandl:
RegExpExtract = CVErr(xlErrValue)
End Function
Дмитрий(The_Prist) Щербаков, посмотрите на текст выше. Я уже пробовал экранировать скобку и результат оказался тем же. Я пользуюсь регулярками в Adobe Indesign, там всё отлично экранируется и проблем с формулами не возникает. Это не проблема RegExp, это проблема странностей Excel или VBA, точно не знаю чего.
Проблемы возникают и в применении "жадности" к паттернам. Просто . (паттерн любого символа) работает, а паттерн + квантор .+ или .* выдают ошибку. Этого не происходит в языках программирования и в том же Indesign при поиске с помощью GREP.
Более того проблема с кванторами возникает исключительно при обращении ко второму и следующим вхождениям в выражениях.
Доброго. Использую макрос по RegExpExtract, найденный на просторах данного сайта. При любой попытке найти открывающую "(" или закрывающую ")" скобку формула выдает либо ошибку, потому что скобка не закрыта, либо #ЗНАЧ. Какой синтаксис использования "(" и ")" как символов в поиске через RegExpExtract? Вот что я уже пробовал: =RegExpExtract(RC[-3];"(\d{1,3}";1) =RegExpExtract(RC[-3];"~(\d{1,3}";1) =RegExpExtract(RC[-3];"\(\d{1,3}";1) =RegExpExtract(RC[-3];""("\d{1,3}";1)
Ищу текст "(1" в строке ВАНТУЗ ПЛАСТМАСС. РУЧКА (1/100) "ВИРПЛАСТ"
Я открыл форум и ничего не меняя изначально набил текст. Он был полужирным.
Размер шрифта я не трогал. Изменил только шрифт по умалочанию на Arial. Bold выделен не был. Почему по умолчанию стоит такое форматирование это вопрос к создателям форума и конкретной настройке сообщения при создании темы по умолчанию.
Можете забанить меня или применить другие санкции, но я не делал со шрифтом ничего, кроме смены шритфта. У меня при написании текста и сейчас всё выглядит полужирным.
Губки скорее всего будут идти отдельно каждая позиция. Точно я этого не знаю, поэтому пока оставил.
Цитата
Bema написал: А мне кажется задачу можно упростить. Если Вы знаете, что Бумага шлифовальная водостойкая p80 листы 230х280мм пачка 10 шт отличается только показателем зернистости (если не ошибаюсь ), его и нужно извлекать.
Я извлек таким образом несколько позиций, но то что я мог вывести это 50 строк, а всего 1000.
Вот формула, но это под каждый вид надо создавать правила:
Bema написал: а жирным шрифтом написали что бы обозначить важность своей задачи?
Я пытался убрать жирный шрифт, но он не убирается. Не знаю с чем это связано, даже шрифт поменял.
Вот в жирном. Это курсив. Это обычный текст. Браузер последний фокс.
Файлик приложил.
Визауально задача несложная, найти одинаковую номенклатуру с разными параметрами, затем все парамерты слить в одну строку и в дальнейшем сформировать каталог в Indesign. Обычно все характеристики разделяют на стадии введения номенклатуры в базу данных, здесь же все в кучу. Я уже отделил множество похожих параметров в отдельные строки, а вот с эим справиться не могу.
Словесно алгоритм следующий: сравнивать текст двух строк слева направо, пока не найдутся различия. Проверить не содержит ли отличаемое слово цифр. Если нет, оставить строку справа пустой и перейти к следующему сравнению. Иначе скопировать слово в новую ячейку и искать по строке далее, пока не кончится строка. В идеале в правой строке должна быть сцепка из всех различий через пробел, так как не всегда различие в одном слове. Этот метод пропустит несколько ячеек для заполнения, но там я уже и вручную сделаю.
Добрый день. Есть длинный список текстовых данных. Необходимо сравнить верхнюю строку с нижней, найти в них различия и поместить в отдельную строку. Сравнивать посимвольно или даже вытягивая слова за счет поиска пробелов сложновато, в строках до 15 слов. Есть еще нюанс, на базе этой формулы я хочу после добавить еще одну, чтобы отделять сильно различающиеся строки и едничные значения.
Бумага шлифовальная водостойкая p 400 листы 230х280мм пачка 10 шт
Бумага шлифовальная водостойкая p 600 листы 230х280мм пачка 10 шт
Бумага шлифовальная водостойкая p 800 листы 230х280мм пачка 10 шт