복각 VBA tips 해설
018. ADO를 사용하여 테이블과 레코드를 삭제하는 방법 : VBA Tips 설명
Delete 메서드
Delete 메서드는 현재 레코드를 삭제하거나 테이블, 테이블 필드 등을 컬렉션에서 삭제하는 메서드입니다. DAO와 ADO 모두 사용할 수 있지만 삭제 가능한 레코드 집합이어야 합니다. 삭제할 테이블이 체인 삭제 관계의 기본 테이블인 경우 현재 레코드를 삭제할 때 외래 키 측 테이블 레코드도 삭제될 수 있습니다.
서식
recordset.Delete
인수
인수
의미
명세
Recordset
열려 있는 Recordset 객체 변수를 지정합니다.
생략 불가
관련 항목
recordset.Delete
$\style{background-color:DodgerBlue;}{사례 )ADO를 사용하여 "주식회사"의 문자가 있는 레코드 삭제}$
ADO를 사용하여 "주식회사"문자를 가진 레코드를 삭제합니다.
$\style{background-color:DodgerBlue;}{명령 버튼 클릭 시 이벤트 프로시저 만들기}$
명령 버튼 클릭 시 이벤트 프로시저를 다음과 같이 작성합니다.
명령 버튼 클릭 시 이벤트 프로시저를 다음과 같이 작성합니다.
Private Sub 実行_Click()
On Error GoTo エラー
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim strTbl As String
Dim strMoji As String
Dim varRet As Variant
Set cn = CurrentProject.Connection
strTbl = "納入先マスター"
strMoji = "株式会社"
rs.Open strTbl, cn, adOpenKeyset, adLockOptimistic
Do Until rs.EOF
If InStr(rs!取引先, strMoji) <> 0 Then '--- A
rs.Delete
End If
rs.MoveNext
Loop
Me.Requery '--- B
rs.Close: Set rs = Nothing
cn.Close: Set cn = Nothing
Exit Sub
エラー:
If Err.Number = -2147217900 Then
MsgBox "該当するテーブルがありません。"
Else
MsgBox Err.Number & " : " & Err.Description
End If
End Sub
해설
A.InStr 함수는 지정된 문자를 찾을 수 없을 때 0을 반환합니다.
B. 삭제한 레코드를 양식에서 제거합니다.
$\style{background-color:DodgerBlue;}{동작 확인}$
Reference
이 문제에 관하여(복각 VBA tips 해설), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Q11Q/items/9857935134eff53f951d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)