Jump to content

Recommended Posts

2 минуты назад, MCAD сказал:

Думал не бывает уже 1:3

бывает когда в формат не умещается, но масштаб будет стоять правильный (руками (1:2,5 или 2)))

от балды ж там масштабы)))

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

Добрый день.

Столкнулся с проблемой, есть нумерация помещений, например, 121, 122.1-122.11. Как сделать чтобы нумерация по порядку была, а не вот так (см. ниже)?

image.png.0877f5a2ee82142bb4a3b332a649104a.png

Link to comment
Share on other sites

8 минут назад, hudozhnik сказал:

есть нумерация помещений

Что за помещения? 

Почему такая нумерация? 

Можно, например, subString попробовать. 

Если, конечно это отчёт. По картинке не понятно ничего. 

  • Like 1
Link to comment
Share on other sites

2 часа назад, MCAD сказал:

Что за помещения? 

Почему такая нумерация? 

Можно, например, subString попробовать. 

Если, конечно это отчёт. По картинке не понятно ничего. 

1. Есть блок с атрибутами, один из атрибутов - это номер помещения

2. Нумерация такая, потому-что нужна в таком виде, чтобы была от 1 до N, где N это, грубо говоря, множество рациональных чисел (на самом деле просто целое число с суффиксом ".1"...".n", где n - также целое число. Это нужно для выделения номеров помещений в подгруппу, чтобы визуально было понятно к какой подгруппе относится то или иное помещение

3. Нумерация "забивается" в блок вручную

4. В итоге при нумерации 1.1 - 1.9 при сортировке номера по возрастанию все ОК, как только появляется номер 1.10 и далее сортировка работает не так как хотелось бы (см. картинку постом выше)

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

6. В наноТаблицах у меня так не получилось, substring' ом я, если честно, тоже не понял как сделать, чтобы нумерация приняла нужный вид

Link to comment
Share on other sites

13 минут назад, hudozhnik сказал:

тоже не понял как сделать

Делаешь 2 фиктивных (скрытых столбца). В 1ый выводишь то, что до точки, во 2й - что после и делаешь сортировку по этим столбцам

  • Like 1
Link to comment
Share on other sites

1 час назад, hudozhnik сказал:

Нумерация такая, потому-что нужна в таком виде

Обсуждали уже

 

добавлено через 1 минуту

Но с файлом примера пойдет веселее

Link to comment
Share on other sites

10 часов назад, hudozhnik сказал:

3. Нумерация "забивается" в блок вручную

Не проверял особо

image.png.ec5fa8d31457b68289d6c744dbbeb43a.png

 

9 часов назад, doctorraz сказал:

Но с файлом примера пойдет веселее

Тебе только бы поржать :beer2:

6.dwg

  • Haha 1
Link to comment
Share on other sites

10 часов назад, hudozhnik сказал:

Нумерация такая, потому-что нужна в таком виде, чтобы была от 1 до N, где N это, грубо говоря

А нельзя как-то формализовать "Индекс" помещения. Например, сначала отсортировать по "Типу", а потом по "Площади". 

Тогда и не нужно руками ничего вообще нумеровать (кроме первого номера) . Хотя и для него тоже можно како-то правило придумать

 

Type_Area.dwg Block Area.mcdi

Link to comment
Share on other sites

  • 2 months later...

Добавление знаков перед значимыми символами/

Для Перфекциони́стов, важно количество символов в строке, приходящей в таблицу из чертежа

 

 

Изначально в примере это было решено с помощью Select ()

00:22, такое решение не позволяет гибко перенастраивать количество знаков. Хотя имеет некоторые преимущества, например можно в зависимости от количества символов, добавлять нужный префикс. Можно сделать по-другому:

00:36 Определяем количество символов в тексте в колонке «А» как strLen(off(0;-3))

01:03 Для простоты и наглядности (короче мультик) задаемся, что нам нужно иметь ШЕСТЬ символов в строк. Для того, чтобы определить сколько символов нам нужно добавить пишем 6-strLen(off(0;-3))

01:13 С помощью функции subString отрезаем из строки «000000» количество символов, которые нужно добавить к исходной строке substring(“000000”;1;6-strLen(off(0;-3)))

01:39 Добавляем проверку. Если текстовая строка, пришедшая с чертежа, длиннее чем мы задали, то пишем «», иначе substring(“000000”;1;6-strLen(off(0;-3))). Теперь в колонке отображаются только те символы, которые должны быть добавлены к строке

02:18 Теперь нужно добавить то, что пришло с чертежа. Так как строка может быть содержать сsслки на объект заранее форматируем её как текст fmtRaw(off(0;-3))

03:08 Проверяем работу.

В примере, который можно скачать по ссылке выше константа «000000» заменена на значение «комментированной ячейки» "С2" "Определение строки"

image.png.ca69ae154734daca0c3a75cb30746119.png

и выражение становится универсальным: =iff(strLen(off(0;-3)) > strLen(This."Определение строки");"Больше "+strLen(This."Определение строки")+" ("+strLen(off(0;-3))+")";subString(This."Определение строки";1;strLen(This."Определение строки")-strLen(off(0;-3)))+FmtRaw (off(0;-3)))

Где strLen(This."Определение строки") возвращает количество необходимых знаков в строке.

  • Like 1
Link to comment
Share on other sites

Добрый день.

При экспорте таблицы в Excel все числа вида 1.1, стали 1,1. То есть точка в таблицах нано стала запятой в Excel. Можно как-то настроить, чтоб и в Excel точка оставалась точкой?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Tell a friend

    Love Официальный форум компании Нанософт Разработка? Tell a friend!

×
×
  • Create New...