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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.01.2011, 11:35   #1
Nasten'ka7
Пользователь
 
Регистрация: 27.01.2011
Сообщений: 56
Печаль при последующем внесении данных , стираются предыдущи

Здравствуйте, вопрос состоит в следующем!
Это код:
Private Sub CommandButton2_Click()
i = 0
If i = 0 Then i = Cells(1, 2).Value ' 'считывает значения
Sheets("Лист1").Select
Cells(6, 2).Select
If (TextBox18.Value <> "") And (TextBox18.Value <> 0) And (TextBox28.Value <> "") And (TextBox28.Value <> 0) Then
ActiveCell.Offset(i, 0).Value = Label1.Caption
ActiveCell.Offset(i, 1).Value = TextBox18.Value
i = i + 1
End If
Есть форма, в textbox-ы вносятся данные... но , при последующем внесение , стираются предыдущие, как этого избежать????????
Nasten'ka7 вне форума Ответить с цитированием
Старый 27.01.2011, 11:46   #2
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Например, переменную i задать глобально, и не обнулять и не менять в начале кода.
Но при следующем открытии файла она опять будет изначально равна 0, кроме того, возможно она используется/изменяется и в других кодах книги.
Лучше динамически определять последнюю заполненную строку, и использовать это значение + 1
Код:
iLastRow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
это по первой колонке.

Но конкретно в этом коде похоже в Cells(1, 2).Value должно быть количество заполненных строк, которое присваивается в начале переменной. Возможно, Вы стёрли там формулу.
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 27.01.2011 в 11:50.
Hugo121 вне форума Ответить с цитированием
Старый 27.01.2011, 12:04   #3
Nasten'ka7
Пользователь
 
Регистрация: 27.01.2011
Сообщений: 56
По умолчанию

Спасибо, сейчас попробую... формула счетз? Вы ее имеете в виду? Она в наличии...
Nasten'ka7 вне форума Ответить с цитированием
Старый 27.01.2011, 12:09   #4
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Она в B1? Какое значение?
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 27.01.2011 в 12:18.
Hugo121 вне форума Ответить с цитированием
Старый 27.01.2011, 12:54   #5
Nasten'ka7
Пользователь
 
Регистрация: 27.01.2011
Сообщений: 56
По умолчанию

Да в В2.. значение 5+ СЧЕТЗ (А:A)
Nasten'ka7 вне форума Ответить с цитированием
Старый 27.01.2011, 12:54   #6
Nasten'ka7
Пользователь
 
Регистрация: 27.01.2011
Сообщений: 56
По умолчанию

ой.. в В1, опечатка )
Nasten'ka7 вне форума Ответить с цитированием
Старый 27.01.2011, 13:00   #7
Nasten'ka7
Пользователь
 
Регистрация: 27.01.2011
Сообщений: 56
По умолчанию

что-то не получается, стирает...
Nasten'ka7 вне форума Ответить с цитированием
Старый 27.01.2011, 14:00   #8
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

А сам CommandButton2 не на другом ли листе?
Т.е. правильная ли цифра в этой формуле на листе с кнопкой?
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 27.01.2011, 14:06   #9
Nasten'ka7
Пользователь
 
Регистрация: 27.01.2011
Сообщений: 56
По умолчанию

да.. это все правильно.. И я только что нашла решение и долго смеялась:

формула : СЧЕТЗ(A:A)

а код:

Private Sub CommandButton2_Click()

Sheets("Лист1").Select
Cells(6, 2).Select

j = Cells(1, 2).Value - 1

i = 0

If (TextBox18.Value <> "") And (TextBox18.Value <> 0) And (TextBox28.Value <> "") And (TextBox28.Value <> 0) Then
ActiveCell.Offset((i + j), 0).Value = Label1.Caption
ActiveCell.Offset((i + j), 1).Value = TextBox18.Value
ActiveCell.Offset((i + j), 2).Value = TextBox28.Value
ActiveCell.Offset((i + j), (-1)).Value = TextBox38.Value
i = j + 1
Nasten'ka7 вне форума Ответить с цитированием
Старый 27.01.2011, 14:06   #10
Nasten'ka7
Пользователь
 
Регистрация: 27.01.2011
Сообщений: 56
По умолчанию

и не спрашивайте, почеум работает.. ))) я не знаю...
Nasten'ka7 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка при внесении данных в базу cherry25 БД в Delphi 3 17.06.2009 14:28
Проверка при внесении данных RoZi БД в Delphi 11 29.04.2009 13:01
проблемы с chart, при внесении изменения данных график не хочет рисоваться Барби Помощь студентам 20 12.11.2008 15:58
Как заставить макрос работай автоматически при внесении данных ? artfunk Microsoft Office Excel 9 31.08.2008 20:01
При закрытии листа, стираются данные Romuald Microsoft Office Excel 2 20.12.2007 13:24