Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Functionen einer Form in Word exportieren

Frage Entwicklung VB for Applications

Mitglied: erik87

erik87 (Level 1) - Jetzt verbinden

27.04.2011 um 19:28 Uhr, 2771 Aufrufe, 7 Kommentare

Hallo Forumgemeinde,

ich würde gerne zur Dokumentation meines Programmes alle Funktionen und Subs einer Form in Worddateien packen. Ich hatte mir das so vorgestellt das ich für jede Form oder jedes Objekt einen Ordner anlege und dann jede Sub/funktion einzeln als Worddatei darin ablege. Ich könnte das zwar alles per Hand machen, aber das würde ewig dauern. Gibt es eine Möglichkeit dies über einen Automatismus zu realisieren??? Sehr schön wäre auch wenn gleich die Formatierung des Textes übernommen wird.

Ich arbeite mit Visual Studio 2008 und habe Word 2007.


Mit freundlichsten Grüßen
Mitglied: mathe172
27.04.2011 um 22:40 Uhr
Hallo,

hast du dir mal überlegt, was mit den Variablen passieren soll, die in der Form-Klasse definiert sind und in den Funktionen benutzt werden?

Mathe172
PS.:Das mit den Formatierungen könnte schwierig werden...
Bitte warten ..
Mitglied: erik87
27.04.2011 um 23:15 Uhr
Hallo,


zum einen soll das Komplette Klassenmodul natürlich auch in eine extra Worddatei. Die Nachbereitung mit den Publics und Strukturen wird kein großer Aufwand, im gegensatz zum Anlegen der einzelnen Dateien. Die Formatierung könnte ich mir per Word-Makro zur not alleine basteln. Viel wichtiger finde ich das "exportieren" in die einzelnen Ordner.


Mfg.
Bitte warten ..
Mitglied: mathe172
28.04.2011 um 16:57 Uhr
Hallo,

ich habs zwar noch nicht ganz geschafft, aber schau mal das an:

01.
'Das als Makro in ein Dokument, den Code der Klasse/Form ins Dokument selbst kopieren 
02.
Sub Aufteilen() 
03.
Dim SubOderFunction As String 
04.
Dim InSubOderFunction As Boolean 
05.
    For Each Absatz In ActiveDocument.Paragraphs 
06.
    Dim Zeile As String 
07.
    Zeile = Left(Absatz, Len(Absatz) - 1) 
08.
    Dim Wörter() As String 
09.
    Wörter = Split(Zeile, " ") 
10.
        If IsInArray(Wörter, "Sub") Then 
11.
            If Replace(Zeile, " ", "") = "EndSub" Then 
12.
                SubOderFunction = SubOderFunction & Zeile 
13.
                MsgBox SubOderFunction 
14.
                SubOderFunction = "" 
15.
                InSubOderFunction = False 
16.
                Else 
17.
                InSubOderFunction = True 
18.
            End If 
19.
            ElseIf IsInArray(Wörter, "Sub") Then 
20.
            If Replace(Zeile, " ", "") = "EndFunction" Then 
21.
                SubOderFunction = SubOderFunction & Zeile 
22.
                MsgBox SubOderFunction 
23.
                SubOderFunction = "" 
24.
                InSubOderFunction = False 
25.
                Else 
26.
                InSubOderFunction = True 
27.
            End If 
28.
        End If 
29.
    If InSubOderFunction Then SubOderFunction = SubOderFunction & Absatz 
30.
    Next 
31.
End Sub 
32.
Function IsInArray(ByRef ZuPrüfendeArray() As String, SuchString As String) 
33.
    IsInArray = False 
34.
    For Each Element In ZuPrüfendeArray 
35.
        If Element = SuchString Then 
36.
            IsInArray = True 
37.
            Exit Function 
38.
        End If 
39.
    Next 
40.
End Function
Das gibt dir jede Sub oder Function aus, jedoch weiss ich noch nicht, wie ich den Text mit Format kopieren kann.

Mathe172
Bitte warten ..
Mitglied: erik87
28.04.2011 um 19:22 Uhr
Hi,

also erstmal danke für deine Hilfe. Es erscheint jedoch die Fehlermeldung: "Der öffentliche Member Paragraphs für den Typ Document wurde nicht gefunden."

Aber im Prinzip weiß ich jetzt wie ich es machen kann. Eigentlich nur den kompletten Text in nen Array und dann mit "function" oder "Sub" aufsplitten.

Ich werde mir also die Mühe machen und die Kompletten Klassen per Hand in eine Word packen und dann über ein Wordmakro das ganze aufteilen. Hat den Vorteil das der Text gleich Formatiert ist.

Aber Danke für den Denkanstoß. Meistens ist die einfachste Lösung halt doch die beste :D
Bitte warten ..
Mitglied: Biber
28.04.2011 um 20:37 Uhr
moin Erik87,

Zitat von erik87:
..... Es erscheint jedoch die Fehlermeldung: "Der öffentliche Member Paragraphs für den Typ Document wurde nicht gefunden."

Das oben als Object verwendete ActiveDocument ist auch nur ein Property.
Das hat gerade mal einen ActiveDocument.Name und das war es schon fast.

Die Paragraphs wiederum sind Child-Objects von drei möglichen Object-Typen: von Document, Range oder Selection.

Dim rngAlles As Range 
' Mach also einfach zu Beginn des Subs, _falls_ denn überhaupt  
' mehrere Word-Dokumente offen sein können, ein 
Documents("DeineWorddatei.doc").Activate 
 
Set rngAlles = ActiveDocument.Range(Start:=0, End:=0) 
For Each Absatz In rngAlles.Paragraphs  
 ....
Grüße
Biber
Bitte warten ..
Mitglied: erik87
28.04.2011 um 20:44 Uhr
Hallöle Biber,

anscheinend war der Fehler das ich den Code in den VisualStudio08-Makroeditor kopiert habe. :D Da ja mein Anliegen einer "Export-Funktion" direkt aus dem VisualStudio galt. Im Word bekomme ich den Makro alleine hin. Vielen vielen Dank trotzdem


Mfg.
Bitte warten ..
Mitglied: Biber
28.04.2011 um 20:46 Uhr
*lach*

Wie du schon so treffend schriebst:
Meistens ist die einfachste Lösung halt doch die beste...
Auf diese einfache Wurzel des Übels bin ich in der Tat nicht gekommen... *gg

Dann lass uns da bitte einen Haken dran machen.

Grüße
Biber
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Microsoft Office
Laufzeitfehler 438 bei Word und Exel-AddIns (1)

Frage von klanax zum Thema Microsoft Office ...

Windows 7
Microsoft Word - Anzeigefehler bei Scrollen

Frage von heisenberg4 zum Thema Windows 7 ...

Microsoft Office
gelöst Wie kann man die Standard-Schriftart bei einfügen von Text in Word 2013 festlegen? (3)

Frage von Rene1976 zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (14)

Frage von liquidbase zum Thema Windows Update ...