|
|
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Добрый день. Помогите решить задучу. Есть таблица в Excel (см вложение), набор цифр - это номер коробки. Может быть более 2000 номеров. Сканер сканирует штрих код с коробки и вносить номер в эту же таблицу. Надо чтобы как только номер со сканера попал в ячейку (на пример в С1), Excel сравнил бы введенный номер с номерами в массиве и переставил бы его в ту же строку, где и исходный номер, пометив его зеленым цветом (столбец В). Если такого номера в массиве нет, то его надо добавить в конец массива выделив его красным цветом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2009, 23:45 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
HELP! HELP! HELP! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2009, 21:56 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Winner1, держи код :) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2009, 08:21 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Через Find надо делать, быстрее будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2009, 10:47 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Hugo121, да можно и так... просто написал за пару минут первое , что пришло в голову :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2009, 10:52 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Сканер в конце ввода данных нажимает Энтер? Если ДА, то так для начала: Код: plaintext 1. 2. 3. 4. 5. 6. Вместо MsgBox 1 надо добавить обработку данных и возврат активной ячейки в С1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2009, 12:19 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Потестируй, повторы номеров не обрабатываются (копирует в первую найденную ячейку, поверх данных, если они уже есть): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2009, 13:07 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Извиняюсь за оффтоп... А никто не знает как в качестве Target указывать не конкретную ячейку, а любую из ячеек определенного стобца, только не испоользуя при этом циклы? Я делаю это через циклы просто, иногда тупит из - за этого всё... Может как - то можно сразу указать свойством каким-нибудь или методом? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2009, 10:54 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
SimpleCИзвиняюсь за оффтоп... А никто не знает как в качестве Target указывать не конкретную ячейку, а любую из ячеек определенного стобца, только не испоользуя при этом циклы? Я делаю это через циклы просто, иногда тупит из - за этого всё... Может как - то можно сразу указать свойством каким-нибудь или методом? ЫщЫ на форуме по словам Worksheet_Change и intersect (одновременно имеется ввиду) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2009, 10:56 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Deggasad, ну на счёт Worksheet_Change момент очевидный.... А вот про intersect я не знал :) Видимо, в этом решение... Спасибо :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2009, 10:59 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Hugo121, Большое СПАСИБО! Да, сканер сам вводит ENTER. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2009, 10:17 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Hugo121, На выходных все протестирую и отпишусь. А можно, как-то отслеживать, что одна и та же коробка была отсканирована два раза и как-то об этом сразу же сообщать (цветом, звуком, банером и т.д.)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2009, 10:21 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
можно, как-то отслеживать - можно, надо в процедуру поиска добавить FindNext. Вот пример, может сами приспособите: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. Если мой код подойдёт, могу на след. неделе добавить, если надо будет ещё ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2009, 10:32 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Чуток подумал... Хотя, если в начальном списке повторов гарантированно нет (а мой код их не добавляет), то надо просто перед строкой Cells(x.Row, 2).Value = Cells(1, 3).Value поставить проверку на отсутствие записи в Cells(x.Row, 2).Value. Если уже есть - ругается и машет руками :) Ну и наверное ещё надо проверить, что бы не было Cells(x.Row, 1).Font.ColorIndex = 3 - т.е. нашли запись, заведённую недавно сканером. Тогда FindNextом код усложнять не надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2009, 11:14 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Вот что-то вроде такого: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. Сообщения отредактируйте на свой вкус. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2009, 13:06 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Hugo121, Большое СПАСИБО! Все работает как надо. Еще одна просьба, очень надо добавить два счетчика. Коробки считаются партиями по 95-110 коробок, поэтому один счетчик считает количество коробок в партии и должен иметь возможность обнуления после подсчета партии. А второй счетчик просто считает общее количество коробок. Если сделать обнуление не возможно, тогда общий счетчик можно поместить в ячейку С3, а счетчиков по партиям можно сделать несколько, чтобы они поочередно отображались в С5 - С6 - С7 - С.... Второй вариант даже лучше, так как дополнительно несет информацию о количестве партий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2009, 20:16 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
счетчиков по партиям можно сделать несколько - не делал, но несет информацию о количестве партий есть... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2009, 11:05 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Как всегда, позже приходит мысль... Строку Код: plaintext 1. Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2009, 11:10 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Там две такие строки, извините.... (почему нельзя править....) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2009, 11:11 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Hugo121, Сообщение в этой ситуации не нужно. Но хотелось бы немного изменить форму представления, так как теряется важная информация: сколько же коробок в каждой партии мы посчитали. В прилагаемом файле я написал, что хотелось бы получить. И если возможно еще два небольших дополнения: - при появлении любого сообщения должен быть еще какой-нибудь звуковой сигнал; - возможно ли, чтобы номера отсканированных коробок поочередно еще и заносились на лист 2 этой же книги? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2009, 09:44 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Потести. С заносом на второй лист легко и просто не получается, если и впрямь очень надо, можно подумать попозже. Остальное сделал. Вот только по звуку - он и так есть при появлении мессиджа (сделай погромче), как прикрутить какую-нибудь мелодию, так сразу в ВБА не знаю, искать надо... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2009, 09:58 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
По заполнению второго листа: Начало кода дополнить двумя строками: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. На втором листе в С1 формулу =COUNTA(A:A) В русской версии вероятно =СЧЁТЗ(A:A) Будет заносить все отсканированные номера подряд в столбец А второго листа (независимо от сообщений). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2009, 10:50 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Hugo121, СПАСИБО! Сейчас буду тестить! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.12.2009, 20:47 |
|
||
|
Помогите распределить данные по массиву
|
|||
|---|---|---|---|
|
#18+
Hugo121, Большое СПАСИБО, все работает кроме звуковых сигналов, но это в принципе не важно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2009, 16:08 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=36342737&tid=2178701]: |
0ms |
get settings: |
12ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
174ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
66ms |
get tp. blocked users: |
2ms |
| others: | 305ms |
| total: | 593ms |

| 0 / 0 |
