MS-Office-Forum

Zurück   MS-Office-Forum > Microsoft Office > Microsoft Word
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads
Themen-Optionen Ansicht
Alt 03.01.2019, 14:28   #1
lukas.sch
Neuer Benutzer
Neuer Benutzer
Standard Word 2010 - Kontrollkästchen Steuerelement - Objekt einblenden

Hallo zusammen,
ich hab da (zu mindest für mich) eine knifflige Frage und hoffe, dass ihr mir da helfen könnt:
Ist es in Word 2010 möglich, wenn man ein Kontrollkästchen anhakt, dass dann ein Objekt erscheint?
Hintergrund ist folgender: Ich will ein Berichtvorlage machen und wenn ein gewiser Fall eintritt (Kontrollkästchen wird angehakt), dann soll eine Checkliste zum abarbeiten sein.

Vielen Dank im Voraus für eure Hilfe.
lukas.sch ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 03.01.2019, 14:43   #2
Gerhard H
MOF Guru
MOF Guru
Standard

Hallo Lukas,

das ist schon möglich. Aber für einen gescheiten Tipp brauchts noch zwei Infos:
  • Was für eine Sorte Kontrollkästchen verwendest du? Es gibt in Word 2010 derer drei (siehe Bild)
  • Was für ein "Objekt" soll eingeblendet werden? Ist das ein anderes Word-Dokument, oder ein Autotext oder noch was anderes?
Angehängte Grafiken
Dateityp: png Steuerelemente.png (12,4 KB, 5x aufgerufen)

__________________

Gruß
Gerhard
Gerhard H ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 03.01.2019, 15:01   #3
lukas.sch
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

Kontrollkästchen von Variante 1 (Schnellauswahl von Steuerelemente).
Es sollte ein zweite Word-Dokument als Objekt eingeblendet werden.
lukas.sch ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 03.01.2019, 17:11   #4
KQLAndy
MOF User
MOF User
Standard

Hallo lukas.sch

Guck mal ob dir das hier weiter hilft:

https://www.ms-office-forum.net/foru...chen+Gerhard+H.

__________________

Gruß
KQLAndy
KQLAndy ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 03.01.2019, 17:53   #5
Gerhard H
MOF Guru
MOF Guru
Standard

Hallo Lukas,

hier ein Beispiel, in dem das eingefügte Objekt kein Autotext ist, sondern ein Dokument.

Leider musste ich das bequeme InsertFile durch Kopieren und Einfügen ersetzen, da ich keine Möglichkeit fand, das Ende des Einfügebereichs zwecks Wiederherstellung der Textmarke zu definieren. Drum ist es ein bisschen komplizierter geworden. Wie dem auch sei, du brauchst in der Berichtsvorlage:
  • Einen Tag für die Checkbox (im Beispiel: CheckEin. Hier Groß-Kleinschreibung beachten!)
  • Eine geschlossene Textmarke. D.h. du erstellst sie, während irgend ein beliebiger kurzer Text markiert ist. Im Beispiel heißt die Textmarke Checklist.

Ferner musst du im Makro Pfad und Dateiname der einzufügenden Checkliste anpassen. Das Makro muss zwingend ins Modul ThisDocument deiner Berichtsvorlage.

Der untenstehende Code ist im angehängten Musterdokument bereits enthalten.
Code:

Private Sub Document_ContentControlOnEnter(ByVal CC As ContentControl)
Dim pfad As String, dateiName As String
Dim CheckDoc As Document, berichtDoc As Document
Dim bmRange As Range
Dim LaengeCheckliste As Long

'nur in Aktion treten, wenn der Tag der Checkbox "CheckEin" lautet:
If CC.Tag <> "CheckEin" Then Exit Sub

Set berichtDoc = ActiveDocument
Set bmRange = berichtDoc.Bookmarks("CheckList").Range

'Pfad und Dateiname der einzufügenden Checkliste ***Anpassen:
pfad = "C:temp"
dateiName = "Checkliste.docx"

On Error GoTo fehler

'Change-Ereignis simulieren
berichtDoc.Range(0, 0).Select

    If CC.Checked Then
       'Checkliste öffnen, in den Bericht kopieren und schließen
       Set CheckDoc = Documents.Open(FileName:=pfad & dateiName, Visible:=False)
       LaengeCheckliste = CheckDoc.Range.End
       CheckDoc.Range.Copy
       bmRange.Paste
       CheckDoc.Close savechanges:=False
        
        'Anpassung von bmRange:
        bmRange.SetRange Start:=bmRange.Start, End:=bmRange.Start + LaengeCheckliste
    Else
        'Strich in Textmarke setzen;kann ersetzt werden durch wenigstens 1 Leerzeichen
        bmRange = "--"
    End If
    
    'Textmarke wiederherstellen
    berichtDoc.Bookmarks.Add Name:="CheckList", Range:=bmRange
 
Exit Sub
fehler:
CheckDoc.Close savechanges:=False
MsgBox Err.Numberr & Err.Description
End Sub
Angehängte Dateien
Dateityp: dotm Berichtsvorlage.dotm (36,0 KB, 4x aufgerufen)

__________________

Gruß
Gerhard
Gerhard H ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 04.01.2019, 08:34   #6
lukas.sch
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

Hallo Gerhard,
erstmal vielen Dank für die rasche Hilfe. Das Dokument Checkliste soll nicht irgendwo vom Laufwerk geladen werden, sondern im Dokument verknüpf sein (wie z.Bsp. wenn man ein Objekt einfügt)
Ich habe mir jetzt den Thread was KQLAndy gepostet hat angeschaut: https://www.ms-office-forum.net/foru...d.php?t=301303

Aber leider kenne ich mich mit Makros so gar nicht aus.

Vielleicht gibt es doch eine Möglichkeit mit Autotext, weil die Checkliste ist ja nichts anderes als eine Tabelle...

Hab jetzt mal ein ganz einfachen Bespiel angehängt. Vielleicht könntest du mir das ensprechend bearbeiten?


Vielen Dank, Gruß Lukas
Angehängte Dateien
Dateityp: docm WP Ankreuz.docm (38,2 KB, 3x aufgerufen)

Geändert von lukas.sch (04.01.2019 um 08:47 Uhr).
lukas.sch ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 04.01.2019, 13:05   #7
Gerhard H
MOF Guru
MOF Guru
Standard

Hallo Lukas,

die Autotextvariante ist auch die einfachere.

Ich nehm an, die möchtest die Tabelle auf Seite 2 deiner Ankreuz.docm (ohne die Kästchen-Übersicht auf Seite 1) in deiner Berichtsvorlage ein- oder ausgeblendet haben?

Dann muss das Makro natürlich auch in der Berichtsvorlage stehen. Und diese muss, wie im Beitrag 5, eine Dokumentvorlage vom Typ *.dotm sein, damit du den Autotext dort unterbringen kannst. Das neue Makro sieht dann so aus:
Code:

Private Sub Document_ContentControlOnEnter(ByVal CC As ContentControl)
Dim bmRange As Range

'nur in Aktion treten, wenn der Tag der Checkbox "CheckEin" lautet:
If CC.Tag <> "CheckEin" Then Exit Sub
Set bmRange = ActiveDocument.Bookmarks("CheckList").Range

'Change-Ereignis simulieren
ActiveDocument.Range(bmRange.Start - 1, bmRange.Start - 1).Select

     'Autotext ein- oder ausblenden je nach Status der Checkbox
     If CC.Checked Then
        Application.Templates(ThisDocument.FullName).BuildingBlockEntries("Checkliste").Insert _
        where:=bmRange
    Else
        bmRange = "--" 'die Striche können ersetzt werden durch wenigstens 1 Leerzeichen
    End If
    
'Textmarke wiederherstellen
ActiveDocument.Bookmarks.Add Name:="CheckList", Range:=bmRange
End Sub
Es ist im angehängten Dokument enthalten. Hinweise zum Nachbasteln findest du dort auch.
Angehängte Dateien
Dateityp: dotm BerichtsvorlageMitAutotext.dotm (79,4 KB, 4x aufgerufen)

__________________

Gruß
Gerhard
Gerhard H ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 08.01.2019, 12:45   #8
lukas.sch
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

Vielen Dank für eure Hilfe.
Nun funktioniert alles!

Gruß, Lukas
lukas.sch ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:59 Uhr.



Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Copyright ©2000-2018 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günter Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.