Sub
aendern()
Dim
db
As
DAO.Database
Dim
db_rs
As
DAO.Recordset
Dim
db_rs_suche
As
DAO.Recordset
Dim
sqlQuery
As
DAO.QueryDef
Dim
db_name
As
String
Dim
suchPara
As
String
Dim
i
As
Integer
Dim
j
As
Integer
tbl = ThisWorkbook.Sheets(
"DMS"
).cboxTbl.Value
tbl = Right(tbl, Len(tbl) - InStrRev(tbl,
" "
))
db_name = ThisWorkbook.Path +
"\" + "
FestnetzDB"
Set
db = DAO.OpenDatabase(db_name)
Set
db_rs = db.OpenRecordset(tbl, dbOpenDynaset)
With
ActiveWorkbook.Sheets(
"DMS"
)
For
i = 3
To
30
If
.Cells(3, i).Value <>
""
And
.Cells(4, i).Value <>
""
Then
suchPara = suchPara & .Cells(3, i).Value &
" "
If
.Cells(4, i).Value <>
""
Then
If
suchPara =
"ID "
Then
suchPara = suchPara &
"= "
& .Cells(4, i).Value &
" AND "
Else
suchPara = suchPara &
"LIKE '*"
& .Cells(4, i).Value &
"*' AND "
End
If
End
If
End
If
Next
End
With
suchPara = Left(suchPara, Len(suchPara) - 5)
Set
db_rs_suche = db_rs.OpenRecordset
For
Each
existQuery
In
db.QueryDefs
If
existQuery.Name =
"spezSuche1"
Then
db.QueryDefs.Delete
"spezSuche1"
Exit
For
End
If
Next
existQuery
Set
sqlQuery = db.CreateQueryDef(
"spezSuche1"
,
"SELECT * FROM "
& tbl &
" WHERE "
& suchPara)
Set
db_rs_suche = sqlQuery.OpenRecordset()
MsgBox db_rs_suche(2)
db_rs_suche.MoveFirst
Do
While
Not
db_rs_suche.EOF
db_rs_suche.Edit
db_rs_suche!Name = Sheets(
"DMS"
).Range(
"D4"
)
db_rs_suche!Nachname = Sheets(
"DMS"
).Range(
"E4"
)
db_rs_suche!A_kennung = Sheets(
"DMS"
).Range(
"F4"
)
db_rs_suche!Email = Sheets(
"DMS"
).Range(
"G4"
)
db_rs_suche!C_kennung = Sheets(
"DMS"
).Range(
"H4"
)
db_rs_suche!Ma_nr = Sheets(
"DMS"
).Range(
"I4"
)
db_rs_suche!Vp_nr = Sheets(
"DMS"
).Range(
"J4"
)
db_rs_suche!Vo_nr = Sheets(
"DMS"
).Range(
"K4"
)
db_rs_suche!Segment = Sheets(
"DMS"
).Range(
"L4"
)
db_rs_suche!Teamleiter = Sheets(
"DMS"
).Range(
"M4"
)
db_rs_suche!Rechte = Sheets(
"DMS"
).Range(
"N4"
)
db_rs_suche.Update
Loop
db.QueryDefs.Delete
"spezSuche1"
db_rs_suche.Close
db_rs.Close
sqlQuery.Close
db.Close
Set
db_rs =
Nothing
Set
db_rs_suche =
Nothing
Set
sqlQuery =
Nothing
Set
db =
Nothing
End
Sub