Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как оставить в полях формы последнее введенное значение? / 25 сообщений из 26, страница 1 из 2
24.04.2004, 23:07
    #32495572
Gyslik.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
У меня в форме пользователь вводит данные. Ввел какие-либо значения для всех полей, нажимает кнопку следующая запиь или создать запись, а по умолчанию во всех полях для новой записи остались заполненные поля, которые пользователь вводил в предыдущей записи.
Как это сделать, подскажите, пожалуйста?
...
Рейтинг: 0 / 0
24.04.2004, 23:27
    #32495584
Geo
Geo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
Как-то странно. Если поля связанные, и насильно не ставишь им .defaultvalue, то такого не должно быть.
...
Рейтинг: 0 / 0
24.04.2004, 23:39
    #32495594
Gyslik.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
2 Geo:
Вы меня неправильно поняли мне не избавиться от этого надо, а сделать надо, чтобы так работало.
...
Рейтинг: 0 / 0
24.04.2004, 23:55
    #32495598
EDUDK01
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
после обновления данных на форме:
Me!myControl.DefaultValue=Me!myControl
...
Рейтинг: 0 / 0
25.04.2004, 21:18
    #32495882
Gyslik.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
У меня есть несколько полей, с некоторыми получается, а нектороые пишут #Имя?
Указывал все для всех полей так как сказано. Для числовых полей работает, а для текстовых нет. Скажите что делать?!?!??!?!
...
Рейтинг: 0 / 0
25.04.2004, 21:29
    #32495886
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
Текстовые надо взять в кавычки.
...
Рейтинг: 0 / 0
25.04.2004, 22:06
    #32495898
Gyslik.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
А что именно надо взять в кавычки?
Беру в кавычки
Me!myControl.DefaultValue="Me!myControl"
и так:
Me!myControl.DefaultValue=Me!"myControl"
и еще по всякому разному,
но не работает.
Подскажите, пожалуйста, что я неправильно делаю?
...
Рейтинг: 0 / 0
25.04.2004, 22:11
    #32495899
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
О святая простота... Результат этой операции должен оказаться в кавычках, а не что-нибудь.

Me!myControl.DefaultValue="""" & Me!myControl & """"

Кстати, и внутри этого стринга неплохо бы кавычки удвоить, а то работать не будет.

Me!myControl.DefaultValue="""" & replace(Me!myControl, """", """""") & """"

И наконец: не худо бы перед всем проверить, не Null ли это значение:

if isnull(Me!myControl.value) then
Me!myControl.DefaultValue="Null"
else
все прочие проверки
...
Рейтинг: 0 / 0
25.04.2004, 22:22
    #32495903
Gyslik.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
Он теперь ругается на Replace
...
Рейтинг: 0 / 0
25.04.2004, 22:36
    #32495904
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
Какими словами?
...
Рейтинг: 0 / 0
25.04.2004, 22:43
    #32495908
Gyslik.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
Ошибка компиляции:
Процедура Sub или Function не определена.
Юзаю Access 97, ругается именно на Replace. написал прямо как в ответе:
Me!MyControl.DefaultValue = """" & Replace(Me!MyControl, """", """""") & """"
...
Рейтинг: 0 / 0
25.04.2004, 22:55
    #32495912
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
Угу. В 97 такого нет. Тогда напиши так:

Me!MyControl.DefaultValue = """" & DoubleQuote(Me!MyControl.value) & """"

Причем функцию DoubleQuote надо написать в модуле:

function DoubleQuote(s as string)as string
dim s0 as string,i as integer,c as string*1
s0=""
for i=1 to len(s)
c=mid(s,i,1)
s0=s0 & c
if c=""""then s0=s0 & c
next
DoubleQuote=s0
end function
...
Рейтинг: 0 / 0
25.04.2004, 23:19
    #32495922
Gyslik.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
Благодарю! Всё работает! Супер!
...
Рейтинг: 0 / 0
23.05.2004, 00:14
    #32529517
Gyslik.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
В продолжении темы.
Делаю кнопку на добавление записей Визардом:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Private Sub Кнопка19_Click()
On Error GoTo Err_Кнопка19_Click
    DoCmd.GoToRecord , , acNewRec
Exit_Кнопка19_Click:
    Exit Sub
Err_Кнопка19_Click:
    MsgBox err.Description
    Resume Exit_Кнопка19_Click   
End Sub 
Так вот, а как мне сделать, чтобы при нажатии на эту кнопку все поля очищались, а в дальнейшем, все последние введенные записи так же оставались в полях?
...
Рейтинг: 0 / 0
23.05.2004, 00:25
    #32529522
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
Ишо раз, плиз... Что такое записи оставались в полях? И какие именно поля в новой (!) записи должны очищаться?
...
Рейтинг: 0 / 0
23.05.2004, 00:38
    #32529523
Gyslik.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
Т.е. все работает, и все записи при добавлении новой записи остаются в полях, как последние введенные, а теперь мне нужно на кнопку добавления записи (это другая кнопка, специальная) поставить такой код, чтобы все записи из всех полей затирались, т.е. были пустыми.
>И какие именно поля в новой (!) записи должны очищаться?
Все поля должны очищаться, мне бы примерчик хотя бы для одного поля.
>Что такое записи оставались в полях?
Это значит, что все работало, так как работает, что очищать поля надо только для этой кнопки.
...
Рейтинг: 0 / 0
23.05.2004, 00:51
    #32529526
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
То есть чтобы одна кнопка добавляла запись с заполненными полями, а другая с пустыми???

Ну так очень просто:

me!полетакоето.defaultvalue=...
me!полетакоето.defaultvalue=...
me!полетакоето.defaultvalue=...
me!полетакоето.defaultvalue=...
me!полетакоето.defaultvalue=...
me!полетакоето.defaultvalue=...
me!полетакоето.defaultvalue=...
me!полетакоето.defaultvalue=...
me!полетакоето.defaultvalue=...
me!полетакоето.defaultvalue=...
DoCmd.GoToRecord , , acNewRec

Только у одной кнопки вместо многоточий будут null'ы, а у другой что-то другое.
...
Рейтинг: 0 / 0
23.05.2004, 00:54
    #32529528
Gyslik.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
Да. Спасибо, большое, это я наверно устал и уже ничего не соображаю.
Мог бы и сам догадаться.
...
Рейтинг: 0 / 0
23.05.2004, 19:15
    #32529748
Gyslik.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
Для Ac97.
Написал так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Private Sub Добавить_магазин_Click()
On Error GoTo Err_Добавить_магазин_Click
Me!мое_поле.DefaultValue = ""
    DoCmd.GoToRecord , , acNewRec
Exit_Добавить_магазин_Click:
    Exit Sub   
Err_Добавить_магазин_Click:
    MsgBox err.Description
    Resume Exit_Добавить_магазин_Click    
End Sub
Access говорит "Объект не поддерживает это св-во или метод".
Написал так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Private Sub Добавить_магазин_Click()
On Error GoTo Err_Добавить_магазин_Click
Me.мое_поле = ""
    DoCmd.GoToRecord , , acNewRec
Exit_Добавить_магазин_Click:
    Exit Sub    
Err_Добавить_магазин_Click:
    MsgBox err.Description
    Resume Exit_Добавить_магазин_Click   
End Sub
Access создает запись со всеми пустыми полями, а когда я начинаю вводить в эти поля значения, то Access просто создает новую запись, а запись со всеми пустыми полями оставляет. Т.е. получаются две записи, одна по клику кнопки со всеми пустыми значениями и одна со всеми введенными значениями. А должна получаться одна запись со всеми введенными значениями.

Что я неправильно пишу, подскажите, PLEASE ? ? ?
...
Рейтинг: 0 / 0
23.05.2004, 19:40
    #32529757
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
авторAccess говорит "Объект не поддерживает это св-во или метод".
На какой строке он это говорит, можно гадать произвольно?
...
Рейтинг: 0 / 0
23.05.2004, 19:50
    #32529763
Gyslik.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
На строке
Код: plaintext
Me!мое_поле.DefaultValue = ""
В общем, все конечно не так уж и плохо работает во втором варианте, только как сделать, чтобы не создавалось записи с пустыми значениями?
...
Рейтинг: 0 / 0
23.05.2004, 20:38
    #32529775
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
Второй вариант не годится, потому что он затирает значение в текущей записи.

Для первого варианта предлагаю подвариант:

Me.Controls!мое_поле.DefaultValue = ""
...
Рейтинг: 0 / 0
23.05.2004, 21:26
    #32529784
Shuhard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
Код: plaintext
1.
Me![P_Test].DefaultValue = ""
иногда [] здорово помогают
...
Рейтинг: 0 / 0
23.05.2004, 22:40
    #32529808
Gyslik.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
Да. Спасибо, получилось.
А как теперь написать эти три строчки, чтобы работало?
Код: plaintext
1.
2.
Me.Controls![поле_дата].DefaultValue = Now()
Me.Controls![поле_время].DefaultValue = # 12 : 00 : 00  AM#
Me.Controls![текстовое_поле].DefaultValue = "мой_текст"
Т.е. пустые поля Access таким образом заносит без проблем, а чтобы Access еще заносил какие-то значения в поля этим методом не получается.
...
Рейтинг: 0 / 0
23.05.2004, 22:46
    #32529812
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как оставить в полях формы последнее введенное значение?
Me.Controls![поле_дата].DefaultValue = "=Now()"
Me.Controls![поле_время].DefaultValue = "#12:00:00 AM#"
Me.Controls![текстовое_поле].DefaultValue = """" & DoubleQuote("мой_текст") & """"
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как оставить в полях формы последнее введенное значение? / 25 сообщений из 26, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]