Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.10.2009, 22:02   #1
Screame
Форумчанин
 
Аватар для Screame
 
Регистрация: 27.05.2009
Сообщений: 170
По умолчанию ввод данных

У меня есть вот такой код
Код:
Private Type расход
    артикул As String
    Товар As String
    произв As String
    модель As String
    поставщик As String
    дата As Date
    кол As String
    End Type
    Dim person As расход
Private Sub запись_Click()
Dim НомерСтроки As Integer
НомерСтроки = Application.CountA(ActiveSheet.Columns(1)) + 1
 With person
    .артикул = art
    .дата = datatxt
    .кол = koltxt
    .модель = modellist
    .поставщик = postlist
    .продажа = prodlist
    .скидка = Znuhtxt
    .Товар = namelist.Caption
    .произв = makerlist.Caption
    .закупка = zakuplist.Caption
End With
With ActiveSheet
.Cells(НомерСтроки, 1).Value = person.артикул
.Cells(НомерСтроки, 2).Value = person.Товар
.Cells(НомерСтроки, 3).Value = person.произв
.Cells(НомерСтроки, 4).Value = person.модель
.Cells(НомерСтроки, 5).Value = person.поставщик
.Cells(НомерСтроки, 6).Value = person.дата
.Cells(НомерСтроки, 7).Value = person.кол
End Sub
С его помощью я вывожу данные на лист из формы, но вот бывают такие случаи, когда одну строку из набора данных я очищаю и нужно в нее внести новые данные. При попытке сделать это при помощи кода приведенного выше ничего не получается он продолжает вводить данные в самом конце набора данных. Можно ли как-то это исправить? Или вообще использовать другой код?
Screame вне форума Ответить с цитированием
Старый 09.10.2009, 23:00   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Код:
  nr = 1:  Do Until Cells(nr, 1) = "": nr = nr + 1:  Loop
в nr получите наименьший номер строки, где в первой колонке пустая ячейка.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 09.10.2009, 23:12   #3
Screame
Форумчанин
 
Аватар для Screame
 
Регистрация: 27.05.2009
Сообщений: 170
По умолчанию

К сожалению, мои познания в VBA пока что не так глубоки, поэтому я вынужден просить Вас описать все это более подробно.
Screame вне форума Ответить с цитированием
Старый 09.10.2009, 23:57   #4
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Код:
Private Type расход
    артикул As String
    Товар As String
    произв As String
    модель As String
    поставщик As String
    дата As Date
    кол As String
    End Type
    Dim person As расход
Private Sub запись_Click()
Dim НомерСтроки As Integer
nr = 1:  Do Until Cells(nr, 1) = "": nr = nr + 1:  Loop
НомерСтроки = nr
 With person
...
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 10.10.2009, 00:03   #5
Screame
Форумчанин
 
Аватар для Screame
 
Регистрация: 27.05.2009
Сообщений: 170
По умолчанию

Спасибо большое за помощь!
Screame вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ввод данных Deni55 Microsoft Office Excel 7 01.06.2009 16:46
Ввод данных policedog Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 30.05.2009 21:53
ВВод данных в БД Марьяна БД в Delphi 5 25.02.2009 23:17
ввод данных opel.omega Общие вопросы Delphi 12 18.11.2008 14:15
Ввод данных Илья Кибель Помощь студентам 1 28.05.2008 11:12