Вылетает иногда "формула", я так сцепку называю(
Определённое пользователем количество символов в формуле
Определённое пользователем количество символов в формуле
Определённое пользователем количество символов в формуле
|
19.09.2018 21:53:01
Есть ещё какие-нибудь идеи? При больших объёмах работы этот код нет возможности использовать. Он удаляет значения, мне надо чтобы они не как не редактировались. |
|||
|
|
|
Определённое пользователем количество символов в формуле
Определённое пользователем количество символов в формуле
Определённое пользователем количество символов в формуле
Определённое пользователем количество символов в формуле
|
16.09.2018 21:51:29
cn - не больше 80 cd - не больше 255 fn - не больше 80 fd - не больше 255 И при каждом вводе от пользователя не сцепка должна начинаться с соответствующим префиксом. Например ввожу fn: ="fn;"&..... ( и не больше 80-ти символов, всё что больше, переносится на строку ниже с соответствующим ШК как продолжение описания) Ввожу cd: ="cd;"&.... ( и не больше 255 символов, всё что больше, переносится на строку ниже с соответствующим ШК как продолжение описания) И так же с остальными 2-мя префиксами |
|||
|
|
|
Определённое пользователем количество символов в формуле
|
16.09.2018 21:40:54
Если нет превышения? - ничего, сцепка должна продолжиться дальше. Если встречается превышение, начинается деление. Деление строки заканчивается и продолжается сцепка описания к другим ШК.
Если пользователь указывается CD - формула должна начинаться ="cd;"&..... и быть не длиннее 255 - ти символов, если CN (="cn;") не больше 80-ти так со всеми переменными (cn/cd/fn(80)/fd(255)) |
|
|
|
|
Определённое пользователем количество символов в формуле
|
16.09.2018 19:58:14
|
|||
|
|
|
Определённое пользователем количество символов в формуле
|
16.09.2018 11:55:06
То что надо) можно чтобы деление "описания" продолжалось, пока не станет ниже допустимого порога? И надо добавить её 2 префикса : fn - 80 символов, fd - 255 |
|||
|
|
|
Определённое пользователем количество символов в формуле
|
16.09.2018 11:47:45
Изменено: - 16.09.2018 11:56:24
|
|||
|
|
|
Определённое пользователем количество символов в формуле
|
15.09.2018 23:07:59
Это описание разбито на разные столбцы (количество столбцов варьируется), я вручную записываю формулу сцепки, перед этим дописывая ="cn;"&.... (вообще префикса 4, они зависят от того, кому принадлежат ШК). Я каждый раз вручную переношу всю информацию с одного листа на другой и начинаю сцеплять, при этом, если я записываю префикс CN (к примеру) - количество символов в строке с формулой (без учёта ="cn;" Я решил написать код в VBA, который бы делал это всё за меня, а именно делал бы готовую формулу с нужным количеством символов на втором листе. Я написал код, который копирует значение на второй лист, запрашивает у пользователя префикс ( через select case) и начинает сцеплять "описание" с тем префиксом что ввёл пользователь. НО, я не знаю как автоматизировать обрезку символов по нужному мне количеству в строке. Т.е. если я указываю в диалоговом окне "cn" - то в каждой строке описания должно быть не более 80 символов. Всё, что превышает должно копироваться ниже вместе с ШК и записываться в такую же формулу. Задача не простая и как по мне специфическая, я не нашёл ничего похожего в интернете и вот я здесь( Пытаюсь объяснить как можно понятнее. (во вложении файл с исходными данными и нужным результатом)
Изменено: - 16.09.2018 11:55:42
|
|||||
|
|
|
Определённое пользователем количество символов в формуле
|
15.09.2018 22:28:19
|
|||
|
|
|
Определённое пользователем количество символов в формуле
|
15.09.2018 14:01:08
Я не знаю как сделать в Excel, чтобы формула (записанная через макрос) понимала сколько символов она сцепляет и начинала переносить на строки ниже продолжение( В скрине я перевёл форматы ячеек в текстовый и поделил самостоятельно. Может так будет яснее, сам макрос должен импортировать в специальную прогу описание ШК (столбец в примере), и именно к нужному штрих-коду нужное описание. Надо чтобы в результате макрос сам понимал что описание к определённому штрих-коду превышает допустимое количество символов и начинал делить строки. Так же приложил макрос который делает нечто похожее, но не отдельную странице, а в текстовый документ (после создания интересен лист CD).
Во вложении файл, может с ним яснее будет (внутри два макроса) |
|||||
|
|
|
Определённое пользователем количество символов в формуле
|
15.09.2018 11:59:03
Есть 4 префикса, на основании которых должна происходить корректировка длины строки по символам. Эти префиксы запрашиваются через диалоговое окно у пользователя, и на основании ввода одного из них, на втором листе должна происходить сцепка (как в примере). Сцепка должна учитывать указанный пользователем префикс : если fn/cn - не больше 80, если cn/cd - не больше 255. При том количество столбцов в сцепке может варьироваться от 2-х до 6 (примерно) и надо чтобы формула сцепки ничего не упустила и не захватила лишнего. Во вложенном файлике пример, (от которого может заболеть сердце) первоначальной версии макроса (без ветвлений), потом были изменения, на надеюсь проблема станет понятней) |
|||
|
|
|
Определённое пользователем количество символов в формуле
|
15.09.2018 11:41:36
То есть он должен понять, что строка превышает допустимые 80, и начать делить её в строки ниже как продолжение. И как закончит с делением одной строки, продолжить формулу дальше Я понятия не имею возможно ли это(
Изменено: - 15.09.2018 15:05:32
|
|||
|
|
|
Определённое пользователем количество символов в формуле
|
14.09.2018 21:51:19
Всем доброго времени суток)
Нужна помощь в решении задачи: Работаю с таблицами в которых бывает произвольное число столбцов, надо, чтобы они объединялись с определённым префиксом на создаваемом макросом листе. Так же у пользователя должен запрашиваться сам префикс в формуле, и на основании этого префикса резались строки на новом листе. То есть если я указываю "fn" - надо чтобы формула на новом листе была не более 80-ти символов (fd - 255), и после началась новая строка, а именно продолжение. Сам я мало понимаю в VBA, с некоторыми задачами справился, но встрял - как сделать чтобы формула резалась по нужному мне количеству символов и чтобы формула ничего не пропустила из ячеек? Объяснил как смог, может по приложенному примеру будет понятнее. |
|
|
|
|