Zdravím,
obracím se na Vás s následující prosbou. Mám databázi v MS Access 2007, která obsahuje asi 30 tabulek, 80 dotazů, 30 sestav a stejné množství formulářů. Pak tam mám pár maker a modulů. Ráda bych názvy všech objektů v databázi (tabulek, dotazů, formulářů, sestav, maker i modulů) "exportovala" do textového souboru např. MS Word. Na internetu jsem si našla kód, který zobrazí názvy objeků, ale umí je ukázat jako message box v MS Access, což je mi k ničemu. Neznáte, někdo, prosím, způsob, jak exportovat názvy objedků databáze do textového souboru, případně umíte někdo upravit kód tak, aby místo do Msg box exportoval názvy objektů?
Díky moc
Kód (myslím, že stačí upravit pouze case7, ostatní exportují vždy jen jeden typ objektů):
Private Sub ChooseObject_AfterUpdate()
Dim DB As Database, I As Integer, j As Integer, ok_cancel As Integer
Dim System_Prefix, Current_TableName, Hidden_Prefix
Dim Ok As Integer, Cancel As Integer
Ok = 1
Cancel = 2
Set DB = DBEngine(0)(0)
Select Case Me![ChooseObject]
Case 1
'System tables are excluded from the list.
For I = 0 To DB.TableDefs.Count - 1
Current_TableName = DB.TableDefs(I).Name
System_Prefix = Left(Current_TableName, 4)
Hidden_Prefix = Left(Current_TableName, 1)
If System_Prefix <> "MSys" And System_Prefix <> "USys" And Hidden_Prefix <> "~" Then
ok_cancel = MsgBox(DB.TableDefs(I).Name, 65, "TABLE NAMES")
If ok_cancel = Cancel Then
Exit Sub
End If
End If
Next I
Case 2
For I = 0 To DB.QueryDefs.Count - 1
ok_cancel = MsgBox(DB.QueryDefs(I).Name, 65, "QUERY NAMES")
If ok_cancel = Cancel Then
Exit Sub
End If
Next I
Case 3
For I = 0 To DB.Containers("Forms").Documents.Count - 1
ok_cancel = MsgBox(DB.Containers("Forms").Documents(I).Name, 65, "FORM NAMES")
If ok_cancel = Cancel Then
Exit Sub
End If
Next I
Case 4
For I = 0 To DB.Containers("Reports").Documents.Count - 1
ok_cancel = MsgBox(DB.Containers("Reports").Documents(I).Name, 65, "REPORT NAMES")
If ok_cancel = Cancel Then
Exit Sub
End If
Next I
Case 5
'Scripts are macros.
For I = 0 To DB.Containers("Scripts").Documents.Count - 1
ok_cancel = MsgBox(DB.Containers("Scripts").Documents(I).Name, 65, "MACRO NAMES")
If ok_cancel = Cancel Then
Exit Sub
End If
Next I
Case 6
For I = 0 To DB.Containers("Modules").Documents.Count - 1
ok_cancel = MsgBox(DB.Containers("Modules").Documents(I).Name, 65, "MODULE NAMES")
If ok_cancel = Cancel Then
Exit Sub
End If
Next I
Case 7
For I = 0 To DB.Containers.Count - 1
For j = 0 To DB.Containers(I).Documents.Count - 1
ok_cancel = MsgBox(DB.Containers(I).Name & Chr(13) & Chr(10) & DB.Containers(I).Documents(j).Name, 65, "ALL OBJECTS")
If ok_cancel = Cancel Then
Exit Sub
End If
Next j
Next I
End Select
End Sub
VBA - MS Access - export názvů objektů
-
- nováček
- Příspěvky: 24
- Registrován: červenec 12
- Pohlaví:
- Stav:
Offline
-
- Mohlo by vás zajímat
- Odpovědi
- Zobrazení
- Poslední příspěvek
-
-
iOS Export fotografii a videii
od Søren » 19 zář 2024 21:58 » v Mobily, tablety a jiná přenosná zařízení - 2
- 2748
-
od Søren
Zobrazit poslední příspěvek
20 zář 2024 00:36
-
Kdo je online
Uživatelé prohlížející si toto fórum: DotNetDotCom.org [Bot] a 5 hostů