Есть макрос. После ввода числовых значений в ячейки G27, I27, K27 и нажатии на ENTER сохраняет данные на второй лист и очищает ячейки ввода. Но вот проблема, при вводе ПОКАЗАТЕЛЯ в текстовом виде выдаёт ошибку. Как в готовом макросе изменить что бы кроме числовых значений прописывались и текстовые, типа HI или LO ?
Есть макрос. После ввода числовых значений в ячейки G27, I27, K27 и нажатии на ENTER сохраняет данные на второй лист и очищает ячейки ввода. Но вот проблема, при вводе ПОКАЗАТЕЛЯ в текстовом виде выдаёт ошибку. Как в готовом макросе изменить что бы кроме числовых значений прописывались и текстовые, типа HI или LO ?Gold_Barsik
Nic70y, Ещё один вопрос по макросу. Я немного добавил в макрос пару-тройку (точнее семь) ячеек данных (о применяемых тест-полосках). Но не могу допетрить, как "сделать" что бы данные дополнения вносились не каждый раз при нажатии, а только лишь при новом изменении в ячейки LOT. Т.е. добавлять данные в столбцы D:K; L только раз, при смене номера LOT (в день применения новой партии полосок). Так как новые полоски имеют свой уникальный номер, то перед применением первой вношу данные о самих полосках F19, K19, K20, K21, K23, K24, K25, т.к. полоски полоскам рознь, разные пределы диапазонов. Эти данные фиксировать в периоде когда они применялись. В столбе L ведётся (как то) подсчёт количества оставшихся полосок (в упаковке 50шт, бывают и по 25шт) в обратной последовательности. На Лист2 строка 283 данные ввёл для начала примера (типа как будет выглядеть). Заранее БЛАГОДАРЕН!
Nic70y, Ещё один вопрос по макросу. Я немного добавил в макрос пару-тройку (точнее семь) ячеек данных (о применяемых тест-полосках). Но не могу допетрить, как "сделать" что бы данные дополнения вносились не каждый раз при нажатии, а только лишь при новом изменении в ячейки LOT. Т.е. добавлять данные в столбцы D:K; L только раз, при смене номера LOT (в день применения новой партии полосок). Так как новые полоски имеют свой уникальный номер, то перед применением первой вношу данные о самих полосках F19, K19, K20, K21, K23, K24, K25, т.к. полоски полоскам рознь, разные пределы диапазонов. Эти данные фиксировать в периоде когда они применялись. В столбе L ведётся (как то) подсчёт количества оставшихся полосок (в упаковке 50шт, бывают и по 25шт) в обратной последовательности. На Лист2 строка 283 данные ввёл для начала примера (типа как будет выглядеть). Заранее БЛАГОДАРЕН!Gold_Barsik
If Not Intersect(Target, Range("F19, K19, K20, K21, K23, K24, K25, G27, I27, K27")) Is Nothing Then u = Sheets("Лист2").Cells(Rows.Count, "A").End(xlUp).Row + 1 v = Application.Match(Chr(255) & Chr(255), Sheets("Лист2").Range("f1:f" & u), 1) w = Sheets("Лист2").Range("f" & v) If Range("K19") <> w And Range("F19") <> "" And Range("K19") <> "" And Range("k20") <> "" And Range("K21") <> "" And Range("K23") <> "" And Range("K24") <> "" And Range("K25") <> "" And Range("G27") <> "" And Range("I27") <> "" And Range("K27") <> "" Then
[/vba] наверное
так [vba]
Код
If Not Intersect(Target, Range("F19, K19, K20, K21, K23, K24, K25, G27, I27, K27")) Is Nothing Then u = Sheets("Лист2").Cells(Rows.Count, "A").End(xlUp).Row + 1 v = Application.Match(Chr(255) & Chr(255), Sheets("Лист2").Range("f1:f" & u), 1) w = Sheets("Лист2").Range("f" & v) If Range("K19") <> w And Range("F19") <> "" And Range("K19") <> "" And Range("k20") <> "" And Range("K21") <> "" And Range("K23") <> "" And Range("K24") <> "" And Range("K25") <> "" And Range("G27") <> "" And Range("I27") <> "" And Range("K27") <> "" Then
Купили тест-полоски, вводим информацию о них в таблицу ввода (Лист1). Проводим тест, вводим данные (дата, время, показатель) Enter. /(заполнение столбцов A,B,C,D,E,F,G,H,I,J,K,L) Данные внесены в таблицу ( всё ОК!)
Проводим тест, вводим данные (дата, время, показатель) Enter. /(в таблицу заносятся только дата, время, показатель) Данные внесены в таблицу ( всё ОК!) и так 50 раз подряд. Тест-полоски закончились.
Купили новые. У них своя информация (есть свой LOT типа (DP8EM3F05A). вводим информацию о них в таблицу ввода (Лист1). Проводим тест, вводим данные (дата, время, показатель) Enter. /(заполнение столбцов A,B,C,D,E,F,G,H,I,J,K,L) Данные внесены в таблицу ( всё ОК!) и т.д.
Купили тест-полоски, вводим информацию о них в таблицу ввода (Лист1). Проводим тест, вводим данные (дата, время, показатель) Enter. /(заполнение столбцов A,B,C,D,E,F,G,H,I,J,K,L) Данные внесены в таблицу ( всё ОК!)
Проводим тест, вводим данные (дата, время, показатель) Enter. /(в таблицу заносятся только дата, время, показатель) Данные внесены в таблицу ( всё ОК!) и так 50 раз подряд. Тест-полоски закончились.
Купили новые. У них своя информация (есть свой LOT типа (DP8EM3F05A). вводим информацию о них в таблицу ввода (Лист1). Проводим тест, вводим данные (дата, время, показатель) Enter. /(заполнение столбцов A,B,C,D,E,F,G,H,I,J,K,L) Данные внесены в таблицу ( всё ОК!) и т.д.Gold_Barsik
Объясните "на пальцах" последовательность своих действий и что хотите получить и при каких обстоятельствах (условиях)
Вроде всё изъяснил в 8 сообщении.
Ну для Вас Nic70y, не жалко ни времени, ни здоровья, ни сил, так и быть . И так. 1 вопрос: Ответ. Вносить через 50 раз (когда закончились предыдущие тест-полоски). 2 вопрос: Ответ. Есть в таблице ячейка K19 туда записываем LOT тест-полосок. Так как этот LOT индивидуален для каждой упаковки, то и моё предложение такое: если меняется ячейка K19, данные прописываются по новой (когда закончились предыдущие тест-полоски).
Вот что уж точно, так это то, что мы живём в разных часовых поясах.
Объясните "на пальцах" последовательность своих действий и что хотите получить и при каких обстоятельствах (условиях)
Вроде всё изъяснил в 8 сообщении.
Ну для Вас Nic70y, не жалко ни времени, ни здоровья, ни сил, так и быть . И так. 1 вопрос: Ответ. Вносить через 50 раз (когда закончились предыдущие тест-полоски). 2 вопрос: Ответ. Есть в таблице ячейка K19 туда записываем LOT тест-полосок. Так как этот LOT индивидуален для каждой упаковки, то и моё предложение такое: если меняется ячейка K19, данные прописываются по новой (когда закончились предыдущие тест-полоски).Gold_Barsik
пока я на работе, мне тоже времени не жалко (директор форум не читает) [vba]
Код
If Not Intersect(Target, Range("F19, K19, K20, K21, K23, K24, K25, G27, I27, K27")) Is Nothing Then u = Sheets("Лист2").Cells(Rows.Count, "A").End(xlUp).Row + 1 v_0 = Sheets("Лист2").Cells(Rows.Count, "F").End(xlUp).Row v = Sheets("Лист2").Range("f" & v_0).Value 'последнее значение LOT If Range("F19") <> "" And Range("K19") <> "" And Range("k20") <> "" And Range("K21") <> "" And Range("K23") <> "" And Range("K24") <> "" And Range("K25") <> "" And Range("G27") <> "" And Range("I27") <> "" And Range("K27") <> "" Then Sheets("Лист2").Range("A" & u) = Range("G27") + Range("I27") Sheets("Лист2").Range("B" & u) = Range("K27") Sheets("Лист2").Range("E" & u) = Range("F19") If Range("K19") <> v Then 'если k19 изменилось, запишем Sheets("Лист2").Range("F" & u) = Range("K19") End If Sheets("Лист2").Range("G" & u) = Range("K20") Sheets("Лист2").Range("H" & u) = Range("K21") Sheets("Лист2").Range("I" & u) = Range("K23") Sheets("Лист2").Range("J" & u) = Range("K24") Sheets("Лист2").Range("K" & u) = Range("K25") Range("G27, I27, K27").ClearContents End If End If
пока я на работе, мне тоже времени не жалко (директор форум не читает) [vba]
Код
If Not Intersect(Target, Range("F19, K19, K20, K21, K23, K24, K25, G27, I27, K27")) Is Nothing Then u = Sheets("Лист2").Cells(Rows.Count, "A").End(xlUp).Row + 1 v_0 = Sheets("Лист2").Cells(Rows.Count, "F").End(xlUp).Row v = Sheets("Лист2").Range("f" & v_0).Value 'последнее значение LOT If Range("F19") <> "" And Range("K19") <> "" And Range("k20") <> "" And Range("K21") <> "" And Range("K23") <> "" And Range("K24") <> "" And Range("K25") <> "" And Range("G27") <> "" And Range("I27") <> "" And Range("K27") <> "" Then Sheets("Лист2").Range("A" & u) = Range("G27") + Range("I27") Sheets("Лист2").Range("B" & u) = Range("K27") Sheets("Лист2").Range("E" & u) = Range("F19") If Range("K19") <> v Then 'если k19 изменилось, запишем Sheets("Лист2").Range("F" & u) = Range("K19") End If Sheets("Лист2").Range("G" & u) = Range("K20") Sheets("Лист2").Range("H" & u) = Range("K21") Sheets("Лист2").Range("I" & u) = Range("K23") Sheets("Лист2").Range("J" & u) = Range("K24") Sheets("Лист2").Range("K" & u) = Range("K25") Range("G27, I27, K27").ClearContents End If End If
Nic70y, Здравствуйте! Так как немного изменил столбцы в Лист2, то вроде бы я их подправил. Но макрос как и прежде прописывает всё и сразу.
[vba]
Код
If Not Intersect(Target, Range("E19, K19, K20, K21, K23, K24, K25, G27, I27, K27")) Is Nothing Then u = Sheets("Лист2").Cells(Rows.Count, "J").End(xlUp).Row + 1 v_0 = Sheets("Лист2").Cells(Rows.Count, "D").End(xlUp).Row v = Sheets("Лист2").Range("D" & v_0).Value 'последнее значение LOT If Range("E19") <> "" And Range("K19") <> "" And Range("K20") <> "" And Range("K21") <> "" And Range("K23") <> "" And Range("K24") <> "" And Range("K25") <> "" And Range("G27") <> "" And Range("I27") <> "" And Range("K27") <> "" Then Sheets("Лист2").Range("J" & u) = Range("G27") + Range("I27") Sheets("Лист2").Range("K" & u) = Range("K27") If Range("K19") <> v Then 'если k19 изменилось, запишем Sheets("Лист2").Range("B" & u) = Range("E19") End If Sheets("Лист2").Range("D" & u) = Range("K19") Sheets("Лист2").Range("E" & u) = Range("K20") Sheets("Лист2").Range("F" & u) = Range("K21") Sheets("Лист2").Range("G" & u) = Range("K23") Sheets("Лист2").Range("H" & u) = Range("K24") Sheets("Лист2").Range("I" & u) = Range("K25") Range("G27, I27, K27").ClearContents End If End If
[/vba]
Есть вопрос с другой стороны. Есть число количества, задействовать её отталкиваясь от её значения. А именно, в ячейке Е20 Лист1 может стоять 25 или 50.
Первая запись. При ВВОДЕ ПОКАЗАТЕЛЯ на Лист 2 в столбец "С" прописать значение ячейки Е20 Лист1 (т.е. 25 или 50) и значения E19, K19, K20, K21, K23, K24, K25, G27, I27, K27 соответственно.
Последующие записи. В Лист2 заносить только по столбцам С, J, K, при этом что бы в столбце "С" значение уменьшалось на 1 от предыдущего (как нумерацию в обратной последовательности от 50 до 1). Когда последняя ячейка столбца "C" Лист2 станет равна 1, то ОЧЕРЕДНУЮ запись выполнить как Первая запись.
Nic70y, Здравствуйте! Так как немного изменил столбцы в Лист2, то вроде бы я их подправил. Но макрос как и прежде прописывает всё и сразу.
[vba]
Код
If Not Intersect(Target, Range("E19, K19, K20, K21, K23, K24, K25, G27, I27, K27")) Is Nothing Then u = Sheets("Лист2").Cells(Rows.Count, "J").End(xlUp).Row + 1 v_0 = Sheets("Лист2").Cells(Rows.Count, "D").End(xlUp).Row v = Sheets("Лист2").Range("D" & v_0).Value 'последнее значение LOT If Range("E19") <> "" And Range("K19") <> "" And Range("K20") <> "" And Range("K21") <> "" And Range("K23") <> "" And Range("K24") <> "" And Range("K25") <> "" And Range("G27") <> "" And Range("I27") <> "" And Range("K27") <> "" Then Sheets("Лист2").Range("J" & u) = Range("G27") + Range("I27") Sheets("Лист2").Range("K" & u) = Range("K27") If Range("K19") <> v Then 'если k19 изменилось, запишем Sheets("Лист2").Range("B" & u) = Range("E19") End If Sheets("Лист2").Range("D" & u) = Range("K19") Sheets("Лист2").Range("E" & u) = Range("K20") Sheets("Лист2").Range("F" & u) = Range("K21") Sheets("Лист2").Range("G" & u) = Range("K23") Sheets("Лист2").Range("H" & u) = Range("K24") Sheets("Лист2").Range("I" & u) = Range("K25") Range("G27, I27, K27").ClearContents End If End If
[/vba]
Есть вопрос с другой стороны. Есть число количества, задействовать её отталкиваясь от её значения. А именно, в ячейке Е20 Лист1 может стоять 25 или 50.
Первая запись. При ВВОДЕ ПОКАЗАТЕЛЯ на Лист 2 в столбец "С" прописать значение ячейки Е20 Лист1 (т.е. 25 или 50) и значения E19, K19, K20, K21, K23, K24, K25, G27, I27, K27 соответственно.
Последующие записи. В Лист2 заносить только по столбцам С, J, K, при этом что бы в столбце "С" значение уменьшалось на 1 от предыдущего (как нумерацию в обратной последовательности от 50 до 1). Когда последняя ячейка столбца "C" Лист2 станет равна 1, то ОЧЕРЕДНУЮ запись выполнить как Первая запись.Gold_Barsik
Я не сомневаюсь что макрос работает правильно, вопрос почему у меня отображает не правильно? А может это быть из-за шапка которую создал на Листе 2?
Я не сомневаюсь что макрос работает правильно, вопрос почему у меня отображает не правильно? А может это быть из-за шапка которую создал на Листе 2?Gold_Barsik
Сообщение отредактировал Gold_Barsik - Пятница, 19.07.2019, 15:59