Страницы: 1
RSS
Вывод сообщение "Такая запись уже существует"
 
Здравствуйте, скажите пожалуйста как на столбец С сделать такая запись уже существует, если при вводе мы вводим тоже значение. Файл по ссылке, т.к превышает размер файл.
http://www.cyberforum.ru/vba/thread2446173.html#taglist
 
Цитата
DKe написал:
Файл по ссылке, т.к превышает размер файл
Почему помогающие должны бегать по ссылкам? Файл больше разрешённого? - так создайте небольшой пример с аналогичной структурой и прикрепите его.
 
Цитата
DKe написал: превышает размер файл
Здесь не нужен рабочий файл. Достаточно примера 20-30 кБ
 
 Попробовала, но пример тоже превышает, а можете показать на коде? Нужно чтоб когда мы вводим в форме в код и если такой код уже есть , то чтоб он выдавал сообщения " Что такая запись уже существует, нужно ли добавить   новую или нет?" Это получается столбец С
Код
Private Sub CommandButton2_Click()
Dim Ar, I As Integer
Ar = Array(1, 8, 9, 10, 7, 6, 20, 19, 17, 18, 16, 15, 14, 13, 12, 11, 25, 24, 23, 22, 21, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 40, 41, 39) 'продолжить массив номерами по порядку следования текстбоксов
Set sht = Sheets("Лист1")
N = sht.Range("A1").CurrentRegion.Rows.Count
For I = 1 To UBound(Ar) + 1
  sht.Cells(N + 1, I) = Me.Controls("TextBox" & Ar(I - 1))
  Me.Controls("TextBox" & Ar(I - 1)) = ""
Next
Me.TextBox1 = Sheets("Лист1").Cells(Rows.Count, 1).End(xlUp).Value + 1
End Sub
Private Sub UserForm_Initialize()
   Me.TextBox1 = Sheets("Лист1").Cells(Rows.Count, 1).End(xlUp).Value + 1
   Me.TextBox8.SetFocus
End Sub
 
Добрый вечер.
Я так пробую - что-то у меня сетфокус не отрабатывает, но может и не нужно...
Код
Private Sub TextBox9_AfterUpdate()
    x = TextBox9
    Set sht = Sheets("Лист1")
    a = sht.Range("A1").CurrentRegion.Columns(3).Value
    For I = 1 To UBound(a)
        If a(I, 1) = x Then MsgBox "Такая запись уже существует!", vbCritical: TextBox9.SetFocus: TextBox9 = Empty: Exit For
    Next
End Sub

P.S. Правда файл брал не по ссылке, а с другого форума.
Изменено: Hugo - 01.05.2019 23:29:10
 
Цитата
Hugo написал: файл брал не по ссылке, а с другого форума.
DKe,  Вы должны сами давать ссылки на параллельное размещение темы
 
Цитата
Hugo написал:
Добрый вечер.Я так пробую - что-то у меня сетфокус не отрабатывает, но может и не нужно...Код ? 12345678Private Sub TextBox9_AfterUpdate()    x = TextBox9    Set sht = Sheets("Лист1")    a = sht.Range("A1").CurrentRegion.Columns(3).Value    For I = 1 To UBound(a)        If a(I, 1) = x Then MsgBox "Такая запись уже существует!", vbCritical: TextBox9.SetFocus: TextBox9 = Empty: Exit For    NextEnd SubP.S. Правда файл брал не по ссылке, а с другого форума.
а в какую часть кода это вставлять?  
 
Цитата
vikttur написал:
DKe ,  Вы должны сами давать ссылки на параллельное размещение темы
это как?
 
DKe, а что непонятно? Разместили тему ещё где-то - информируйте об этом ссылками.
 
DKe, если Вам непонятно, что написано на кнопке: цитировать - не значит бездумно копировать сообщение. Отредактируйте свои сообщения.
 
Цитата
Hugo написал:
Private Sub TextBox9_AfterUpdate()    x = TextBox9    Set sht = Sheets("Лист1")    a = sht.Range("A1").CurrentRegion.Columns(3).Value    For I = 1 To UBound(a)        If a(I, 1) = x Then MsgBox "Такая запись уже существует!", vbCritical: TextBox9.SetFocus: TextBox9 = Empty: Exit For    NextEnd Sub
Выдает ошибку
 
Цитата
vikttur написал:
DKe , если Вам непонятно, что написано на кнопке: цитировать
:D  :D  :D
По вопросам из тем форума, личку не читаю.
 
Цитата
DKe написал:
Выдает ошибку
- я перед публикацией проверил в Вашем файле, никаких ошибок нет.
 
Цитата
Hugo написал:
я перед публикацией проверил в Вашем файле, никаких ошибок нет.
а можете перекинуть на моем файле?  
 
Цитата
Hugo написал:
я перед публикацией проверил в Вашем файле, никаких ошибок нет.
Неправильно написала он выдает даже когда там пусто
 
DKe, я сейчас тему закрою!!!
Не умеете создавать цитаты - не трогайте кнопку! Она не для ответа.

Вернитесь, приведите сообщения в порядок
 
Извиняюсь, и впрямь ошибка есть, но только если на листе строк меньше двух. Можно исправить, но сейчас некогда до ума доводить.
 
Hugo,
автор получил подсказку?
пусть адаптирует ее к своим нуждам пока все у него (у ее) не получится все как ему (ей) нужно
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Подсказку получила.
Но до конца я код не наладил - у меня почему-то сетфокус не отрабатывает - при старте всё ОК, на восьмой текстбокс становится, а вот вернуть на девятый до или после его очистки никак не могу...
Страницы: 1
Наверх