Страницы: 1
RSS
Сгруппировать инвентарные номера
 
Здравствуйте подскажите пожалуйста.

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

спасибо за помощь.
Изменено: Anton2000 - 27.11.2018 21:43:28
 
Это всегда так? Выгрузка откуда-то? Разделитель всегда такой: ", " ?
 
Нет набранный вручную
 
Anton2000, Название темы не корректно. Вам нужно сгруппировать или … но никак не укокоротить.
По вопросам из тем форума, личку не читаю.
 
Очень впечатляют Ваши инвентарные номера!  ;)
Интересно, а как Ваша доблестная "Бюстгалтерия" справляется с ними?!
Эти номера никак не систематизированы тематически!  :D
В какой-такой БД Вы их "ведете"?
 
Здравствуйте.
Цитата
Anton2000 написал:
Нет набранный вручную
Так скажите набирающим, чтобы набирали так как вам нужно.
Если это не возможно, тогда поясните  точнее, вам нужна обработка в какой то момент макросом? Или необходимо чтоб неправильный ввод обрабатывался всегда при вводе данных макросом, или нужна  формула исправляющая ошибки ввода?
Да и ещё вопрос инвентарный номер, это всегда число или может быть текст, например 7000  может быть и 00007000, в первом случае число , во втором текст.
Изменено: gling - 27.11.2018 21:17:04
 
В наш отдел таком виде дали чтобы мы все проверили, подумал что возможно какая нибудь формула поможет, все инвентарные номера начинаются больше нуля и все цифры  
 
Anton2000,если
Цитата
Anton2000 написал:
Нет набранный вручную
Поэтому очень велика вероятность ошибки при наборе (лишний пробел или наоборот - недостаток нужного пробела или запятой или точки и пр.). Excel не умеет читать чужие мысли, он умеет правильно решать задачи, правильно ему сформулированные. Может, опишите задачу подробнее? Почему именно так номера вводятся? И почему именно в одной ячейке? (можно исходные данные скидывать на другой лист или столбцы, или строки, в VBA коде раскидать и т.д) - проще будет получить результат.
Мотя, бюстгалтерия и не такое видала, ко всему привыкла   :)
Из примера ясно, что нужно получить в итоге, (можно  просто тупо высчитать по количеству символов приведенных в примере), но загвоздка - исходные данные: почему и зачем именно так?
Anton2000, можно подробнее? Это не придирки, это для того, что бы решить Вашу задачу
 
Макросом на скорую руку попробовал -
Код
Sub asd()
Dim a$(), r&, i&, p&
For r = 2 To [a65536].End(xlUp).Row
  a = Split(Cells(r, "F"), ", ")
  p = -1
  For i = 0 To UBound(a) - 1
    If a(i) + 1 = a(i + 1) Then
      If p = -1 Then
        p = i
      ElseIf i > p + 1 Then
        a(i) = ""
      Else
        a(i) = "-"
      End If
    Else
      a(i) = a(i) & ", "
      p = -1
    End If
  Next i
  Cells(r, "G") = Join(a, "")
Next r
End Sub
Изменено: Апострофф - 27.11.2018 22:14:24
 
Цитата
Anton2000 написал:
В наш отдел таком виде дали чтобы мы все проверили
- а Вы решаете какую-то совсем другую задачу... Проще ведь проверить! Знать бы ещё что именно... :)
 
Цитата
Anton2000 написал:
В наш отдел таком виде дали чтобы мы все проверили,
Проверили что?
Можно разбить текст написанный через запятую в разные ячейки и потом выяснить какие инвентарные не перечислены во всех этих ячейках, а вам что нужно, сгруппировать или проверить?
Изменено: gling - 27.11.2018 22:23:43
 
Апострофф, спасибо большое получилось, то что надо.
Изменено: Anton2000 - 28.11.2018 14:07:17
Страницы: 1
Наверх