Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/75: Рейтинг темы: голосов - 75, средняя оценка - 4.89
1 / 1 / 0
Регистрация: 19.09.2013
Сообщений: 21
Excel

BOF или EOF имеет значение true либо текущая запись удалена -Excel Access

15.05.2018, 20:47. Показов 14487. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задание что бы из базы данных в ComboBox1 поддягивались филиалы, и в зависимости от выбранного филиала отображался вид ремонта в TextBox2. Филиалы подтянулись, но как только выбираю вылетает - BOF или EOF имеет значение true либо текущая запись удалена
Насколько я понял ругается на
RS.Open substs, con
RS.MoveNext

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Private Sub UserForm_Initialize()
 
Dim con As New ADODB.Connection
Dim RS As New ADODB.Recordset
Dim s As String
con.Provider = "Microsoft.ACE.OLEDB.12.0"
con.ConnectionString = "Data Source=" & "C:\Users\notha\Desktop\User\Microsoft_6.accdb;"
con.Open
RS.CursorType = adOpenStatic
RS.LockType = adLockOptimistic
RS.Open "SELECT filial FROM Филиалы", con
RS.MoveFirst
Do Until RS.EOF
For i = 0 To RS.Fields.Count - 1
s = RS(i)
ComboBox1.AddItem s
Next
RS.MoveNext
 
Loop
RS.Close
 
 
End Sub
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Private Sub Combobox1_Change()
Dim con As New ADODB.Connection
Dim RS As New ADODB.Recordset
Dim s As String
con.Provider = "Microsoft.ACE.OLEDB.12.0"
con.ConnectionString = "Data Source=" & "C:\Users\notha\Desktop\User\Microsoft_6.accdb;"
con.Open
RS.CursorType = adOpenStatic
RS.LockType = adLockOptimistic
s = ComboBox1.Text
substs = "SELECT Ремонт.comment FROM Филиалы INNER JOIN Ремонт ON Филиалы.idfilial = Ремонт.idfilial WHERE ([filial] = '&s')"
RS.Open substs, con
RS.MoveNext
Do Until RS.EOF
For i = 0 To RS.Fields.Count - 1
s = RS(i)
TextBox2.Text = s
Next
RS.MoveNext
Loop
RS.Close
End Sub
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.05.2018, 20:47
Ответы с готовыми решениями:

BOF или EOF имеет значение true либо текущая запись удалена
Не могу допендрить что не так: ADOQuery->FindFirst(); while(!ADOQuery->Eof) // возникает ошибка { //... ...

ADODB.Recordset (0x800A0BCD) BOF или EOF имеет значение True, либо текущая запись удалена.
Пишу вебстраничку для доступа к даным При формировании пустого ркекордсета на Movefirst грязно ругается: Тип ошибки: ...

Тип ошибки: ADODB.Recordset (0x800A0BCD) BOF или EOF имеет значение True, либо текущая запись удалена. Для выполняемой операции требуется текущая
Всем приветПишу вебстраничку для доступа к даным При формировании пустого ркекордсета на Movefirst грязно ругается: Тип ошибки: ...

5
Эксперт MS Access
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
15.05.2018, 21:02
Рекордсет всегда открывается на первой записи. Поэтому в Вашем коде строка RS.MoveFirst лишняя. К тому же если набор данных пустой, то она вызовет ошибку. Уберите эту строку и не будет ошибки
0
1 / 1 / 0
Регистрация: 19.09.2013
Сообщений: 21
15.05.2018, 22:41  [ТС]
Прошу прощения, неправильно скопировал код,

вот верный.
Какой Если удаляю верхний Rs.MoveFirst то то выдает всё туже ошибку .А если во второй ничего во вторую не уходит. Почему?
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
Private Sub UserForm_Initialize()
 
Dim con As New ADODB.Connection
Dim RS As New ADODB.Recordset
Dim s As String
con.Provider = "Microsoft.ACE.OLEDB.12.0"
con.ConnectionString = "Data Source=" & "C:\Users\notha\Desktop\User\Microsoft_6.accdb;"
con.Open
RS.CursorType = adOpenStatic
RS.LockType = adLockOptimistic
RS.Open "SELECT filial FROM Ôèëèàëû", con
RS.MoveFirst
Do Until RS.EOF
For i = 0 To RS.Fields.Count - 1
s = RS(i)
ComboBox1.AddItem s
Next
RS.MoveNext
 
Loop
RS.Close
 
 
End Sub
 
Private Sub Combobox1_Change()
Dim con As New ADODB.Connection
Dim RS As New ADODB.Recordset
Dim s As String
con.Provider = "Microsoft.ACE.OLEDB.12.0"
con.ConnectionString = "Data Source=" & "C:\Users\notha\Desktop\User\Microsoft_6.accdb;"
con.Open
RS.CursorType = adOpenStatic
RS.LockType = adLockOptimistic
s = ComboBox1.Text
substs = "SELECT Ðåìîíò.comment FROM Ôèëèàëû INNER JOIN Ðåìîíò ON Ôèëèàëû.idfilial = Ðåìîíò.idfilial WHERE ([filial] = '&s')"
RS.Open substs, con
RS.MoveFirst
Do Until RS.EOF
For i = 0 To RS.Fields.Count - 1
s = RS(i)
TextBox2.Text = s
Next
RS.MoveNext
Loop
RS.Close
End Sub
Добавлено через 1 час 4 минуты
В смысле если убрать MoveFirst в Private Sub Combobox1_Change()
То в TextBox2.Text Ничего не уходит.
0
...
 Аватар для ji2n
39 / 37 / 13
Регистрация: 08.10.2016
Сообщений: 173
16.05.2018, 20:16
Ошибка в строке 36:
исправьте WHERE ([filial] = '&s')" на WHERE [filial] ='" & s & "'"
Я еще бы вставил RS.CursorLocation = adUseClient после строки 7.

Добавлено через 8 минут
Цитата Сообщение от recer Посмотреть сообщение
В смысле если убрать MoveFirst
Если RS.RecordCount = 0, то метод MoveFirst ошибку генерит, тк нет записей в рекордсэте:
Кликните здесь для просмотра всего текста
BOF или EOF имеет значение True, либо текущая запись удалена. Для выполняемой операции требуется текущая запись.
1
1 / 1 / 0
Регистрация: 19.09.2013
Сообщений: 21
17.05.2018, 13:59  [ТС]
а можно как то сделать что бы в TextBox вывело такую таблицу,
0
...
 Аватар для ji2n
39 / 37 / 13
Регистрация: 08.10.2016
Сообщений: 173
18.05.2018, 17:22
Цитата Сообщение от recer Посмотреть сообщение
а можно как то сделать что бы в TextBox вывело такую таблицу
Никак. TextBox так не может.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.05.2018, 17:22
Помогаю со студенческими работами здесь

ADOQuery.Close выдает ошибку: BOF или EOF имеют значение True ... Для выполнения операции требуется текущая запись.
Пожалуйста, помогите справиться с ADOQuery: ADOQuery.Close выдает ошибку: BOF или EOF имеют значение True ... Для выполнения операции...

Рекордсет пуст если его свойства BOF и EOF имеют значение True
Рекордсет пуст если его свойства BOF и EOF имеют значение True Вот код: Adodc2.RecordSource = 'select max(val(Номер)) as mm from...

Как подавить вывод на экран предупреждения - Either BOF or EOF is True, or the current record has been deleted... ?
Как подавить вывод на экран предупреждения - Either BOF or EOF is True, or the current record has been deleted; the operation requested...

ADODB.Field error '800a0bcd' Either BOF or EOF is True, or the current record has been deleted; the operation requested by the application requires
вываливается ошибка: ADODB.Field error '800a0bcd' Either BOF or EOF is True, or the current record has been deleted; the operation...

Ошибка 'Текущая запись удалена' в ADODataSet
Когда ADODataSet соответствует пустой запрос, при его закрытии возникает ошибка 'Текущая запись удалена'. Как можно с этим справиться


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru