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 14.05.2018, 07:52   #1
anhaase
Neuer Benutzer
Neuer Benutzer
Standard Word 2013 - Mittels Word auf Daten in Excel zugreifen

Hallo,

ich möchte für eine Berechnung in Word (!) Querschnittsdaten von Stahlprofilen aus einer Excel-Tabelle benutzen. Dazu soll der Name des Querschnittes in Word angegeben werden und bestimmte Informationen zu diesem angegebenen Querschnitt in entsprechende Zellen einer Word-Tabelle eingetragen werden.
Zum besseren Verständnis hier ein Bild:
https://imgur.com/a/j9kld

Es gibt zwar noch Felder, die man benutzen kann, um auf Zeilen in der Excel-Tabelle zu verweisen:
{ LINK Excel.Sheet.12 D:LiteraturVorlagenStatikvorlagendlubalprofil.xlsx Tabelle1!Z1S5 a t }
Aber dort müsste ich manuell die Zeile neu eingeben, wenn ich ein anderes Stahlprofil wählen will.

Ich möchte die fertig vorbereitete Tabelle kopieren können, um sie erneut in Berechnungen verwenden zu können.

Vielen Dank für eure Hilfe
Angehängte Dateien
Dateityp: docx Nachweis Biegedrillknicken.docx (190,0 KB, 3x aufgerufen)
Dateityp: xlsx dlubalprofil.xlsx (13,7 KB, 3x aufgerufen)
anhaase ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 15.05.2018, 13:50   #2
Gerhard H
MOF Guru
MOF Guru
Standard

Hallo anhaase,

falls du VBA verwenden willst oder darfst, und dich in der Lage siehst, kleinere Anpassungen in den Makros selbst vorzunehmen, könnte man was basteln, wo bei Dokumentstart die Werte aus eine bestimmten Spalte einer Excel-Tabelle (bei dir wäre das die Spalte "Profil") in ein Dropdown geladen werden. Nach Auswahl eines Wertes dort werden die zugehörigen Werte aus der gleichen Zeile der Excel-Tabelle in Formularfelder eingetragen.
Da die resultierende Tabelle nichts als reinen Text tragen würde, wäre sie auch kopierbar.

Im Bedarfsfall melde dich wieder.

__________________

Gruß
Gerhard
Gerhard H ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 15.05.2018, 14:55   #3
anhaase
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

Die Verwendung eines Makros ist möglich und erlaubt. Ich habe bisher nur in Excel mit VBA gearbeitet, hoffe aber, dass mich das zumindest qualifiziert, auch kleinere Änderungen vorzunehmen.

Ich hoffe nur, dass die Vorbereitung mehrerer Makros für verschiedene Tabelle nicht den eigentlichen Zweck ad absurdum führt, Zeit zu sparen. Denn Querschnittswerte brauche ich für einige in dieser Tabellenform aufgebaute Berechnungen.

Aber ich melde mich jetzt einfach mal :P
anhaase ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 15.05.2018, 17:11   #4
Gerhard H
MOF Guru
MOF Guru
Standard

Hallo anhaase,

im Anhang ein Lösungsansatz.

An der Excel-Tabelle hab ich die beiden leeren Spalten rausgeschmissen. Falls du die für irgendwas noch brauchst, das ist keine Affäre, sie wieder rein zu nehmen., man muss dann halt nur anders zählen.

An der Word-Tabelle musste ich ebenfalls einige kleine Modifikationen vornehmen:
  • Ich hab die Tabelle vor den "Knickkenngrößen" geteilt, damit sie vom Makro als eigenständige Tabelle behandelt werden kann.
  • Das restliche Dokument hab ich gelöscht, sonst wäre es zu fett zum Hochladen geworden.
  • Die verbundenen Zellen in Zeile 1 der Tabelle hab ich rausgenommen, denn sowas macht die VBA-mäßige Bearbeitung erheblich komplizierter.
  • Den Benennungen hab ich in eine eigene Spalte reserviert; die leere Spalte links daneben dient der Aufnahme der vom Makro festgestellten Werte.

Das Eintragen der Werte hab ich nur für die Werte A, Wy und Wz realisiert; die übrigen gehen nach dem gleichen Strickmuster, das du leicht aus dem OnExit-Makro ersehen kannst.

Die Notwendigkeit "mehrerer Makros für verschiedene Tabellen" seh ich jetzt erst mal nicht, es sei denn, ich hab bei deiner Erklärung was verpasst.

Zum Testen beide Dateien in den selben Ordner stecken. Noch ein vermutlich überflüssiger Hinweis: Das OnExit-Makro befüllt die Word Tabelle erst, nach Verlassen des Dropdowns!
Angehängte Dateien
Dateityp: xlsx dlubalprofil.xlsx (14,2 KB, 4x aufgerufen)
Dateityp: dotm NachweisBiegedrillknicken_v1.dotm (41,0 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 16.05.2018, 10:08   #5
anhaase
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

Danke Gerhard,

das funktioniert schon erstaunlich gut, und ist dabei gar nicht so kompliziert.

Aber du hast die Tabelle getrennt, daher kann ich nicht auf die Querschnittswerte im unteren Teil der Tabelle zugreifen. Im Prinzip könnte ich ja mit der Tabelle arbeiten, indem ich die Werte, die ich brauche in die Original-Berechnungstabellen kopiere.
Schöner wäre es natürlich, wenn alles in einer Tabelle enthalten ist, und ich mir das Kopieren sparen könnte. Steigt der Aufwand denn dafür unverhältnismäßig?

"Die Notwendigkeit "mehrerer Makros für verschiedene Tabellen" sehe ich jetzt erst mal nicht, es sei denn, ich hab bei deiner Erklärung was verpasst."

Ich meinte damit, dass ich verschiedene Berechnungstabellen vorbereitet habe. Die Tabelle, die du gesehen hast ist bloß eine von vielen. In allen Tabellen geht es aber darum, bestimmte Querschnittsdaten in bestimmte Zellen zu füllen. Deshalb meine Frage, ob ich das Makro von dir "wiederverwenden" kann, oder für jede Tabelle ein neues Makro brauch, das die Daten richtig einfüllt.

Nachtrag:
Ich bin auf einen Laufzeitfehler gestoßen, nachdem ich Änderungen vorgenommen habe:
https://ibb.co/dkwtOy

Die einzige Änderung (abgesehen von der Füllung der restlichen Werte) war das Abspeichern als .docm.
Liegt es daran? Ich verstehe aber sowieso nicht die Funktion der Vorlagedatei .dotm. Vielleicht kannst du mich darin noch erleuchten.

Geändert von anhaase (16.05.2018 um 10:55 Uhr).
anhaase ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 16.05.2018, 13:13   #6
Gerhard H
MOF Guru
MOF Guru
Standard

Hallo anhaase,

Der Laufzeitfehler:
Es gibt zwei Konzepte: Entweder man lässt sich per Doppelklick auf die Vorlage jeweils ein neues "jungfräuliches" Dokument ausgeben, lässt das bearbeiten und speichert es als normales Dokument ohne Makros weg. Oder man öffnet jeweils ein schon gespeichertes Dokument und lässt die Daten überschreiben und speichert es unter einem anderen Namen wieder.

ich hab mich gewohnheitsmäßig für das erste Kozept entschieden. Wenn du das zweite bevorzugst, musst du den Prozedurkopf Document_New() in Document_Open() ändern. Ersters startet bei Erzeugen eines neuen leeren Dokuments, letzteres bei Wieder-Öffnen eines bereits gespeicherten. Weil Document_New() also beim Öffnen eines schon gespeicherten Dokuments nicht reagiert, werden auch keine Daten eingelesen. Das hat der Laufzeitfehler moniert.

Teilen der Tabellen:
Ich hatte mir deine weiteren Berechnungen noch gar nicht angesehen. Jetzt sehe ich aber, dass deine Berechnungsweise es tatsächlich nötig machen würde, nur eine Tabelle zu haben.
Ich hab sie aber deswegen getrennt, weil die Gesamttabelle verbundene Zellen sowohl in Zeilen als auch in Spalten hat, was die Bearbeitung mit VBA quasi unmöglich macht.

Es gibt aber Alternativen zu deiner Berechnungsweise: Entweder man setzt mit Textmarken in die auszufüllenden Zellen der Wertetabelle und rechnet dann Querverweisen (REF-Feldern) auf diese Textmarken weiter, oder man macht die Berechnungen gleich via Makro, wenn man eh schon dabei ist.

Für beides mach ich dir morgen ein Beispiel, heute komm ich nicht mehr dazu.

__________________

Gruß
Gerhard
Gerhard H ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 16.05.2018, 14:03   #7
anhaase
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

"Laufzeitfehler"
Ok das Konzept mit der Vorlage habe ich verstanden. Das Makro funktioniert wieder.


"Bearbeitung mit VBA quasi unmöglich "
Der Zugriff auf die Zellen der Tabelle ist so schön intuitiv. Da kann ich mich nicht erklären, wieso verbundene Zellen solch Schwierigkeiten bereiten sollten. Mit den Textfeldern funktioniert es doch auch super.

"...rechnet dann Querverweisen (REF-Feldern)..."
Die Variante kenne ich schon, und würde lieber bei den Zellverweisen bleiben, weil ich dieselbe Tabelle dadurch in einem Modell mehrmals verwenden kann. Andernfalls muss ich in jede Berechnung eingreifen und die Referenzierung überarbeiten.

"...Berechnungen gleich via Makro..."
Da wäre ich gespannt. Ich möchte ungern die Berechnung im Makro ausführen und dann nur zahlen in die Tabelle eintragen. Das würde hohen Aufwand für manuelle Eingriffe in die Berechnung bedeuten. Und die Aktualisierbarkeit wäre dann mit einer kopierten Tabelle wahrscheinlich auch hinfällig?

Ich bin dir sehr dankbar für deine Hilfe. Ich habe deinetwegen schon viel gelernt!

Geändert von anhaase (16.05.2018 um 15:01 Uhr).
anhaase ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 17.05.2018, 10:35   #8
anhaase
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

"Bearbeitung mit VBA quasi unmöglich "
Ich habe etwas gesucht und doch eine Möglichkeit gefunden, indem man die Zellen so anspricht:
werteTabelle.Cell(5, 2).Range.Text = ArrProfile(i, 3)

Außerdem kann ich das Dropdown-CC in mehreren Tabellen benutzen, indem ich verschiedene Tags verteile und dann mit IF prüfe, in welchem CC ich mich gerade befinde:

If CC.Tag = "Knicken" Then
With werteTabelle
.Cell(2, 2).Range.Text = ArrProfile(i, 3) 'Spalte C ("A")
.Cell(3, 2).Range.Text = ArrProfile(i, 10) 'Spalte J ("iy")
.Cell(4, 2).Range.Text = ArrProfile(i, 16) 'Spalte P ("iz")
End With
ElseIf CC.Tag = "Biegedrill" Then
...
End If

Also funktioniert es jetzt so wie ich mir vorgestellt habe. Danke für deine Denkanstöße.
anhaase 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 04:59 Uhr.


Partner und Co.
Access-Paradies -Alles rund um die Datenbank Microsoft Access -Code -Programme-Tools -Tipps   Kostenlose Tipps & Tricks, Downloads und Programme   www.kulpa-online.com - Tipps - Tricks - Tutorials - Meinungen - Downloads uvm...   vb@rchiv · Willkommen in der Welt der VB Programmierung   Access-Garhammer - Hier finden Sie jede Menge Beispiel-Datenbanken zu Access und mehr ...   mcseboard.de   Die Top Seite für Excel-VBA-Makros uvm.

Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2018, 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.