Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Excel Code auf Word anpassen
#1
Kann mir bitte jemand diesen Code auf Word anpassen?
Ich bin total schlecht wenn es um Word Vba geht, aber aufgrund der Formatierung muss das in Word geschehen.

     

Code:
On Error GoTo Lösung2

        v = Zoeller
        For I = 3 To Rows.Count
        If Cells(I, 1).Value = v Then
            
        Set zelle = Tabelle1.Cells(CStr(I), 1)
            
        On Error GoTo Fehler
        Set Pic = Tabelle1.Pictures.Insert("\\svprint01\Briefe\Unterschriften\Usw_zoeller.jpg")
            Pic.Top = zelle.Top
            Pic.Left = zelle.Left
            Pic.Name = "BildVomBuch"
            
        Exit Sub
        End If
        Next I

Es gibt hier mehrere Lösungen, daher der On Error GoTo, aber das ist weniger relevant.

ich wäre echt super dankbar!
Antworten Top
#2
Ohne Word Datei ?

Statt 'rows' in Excel, was sollte das sein Word ?

Wie sollte das Endergebnis aussehen ?

Zauberen kann ich, hellsehen nicht.
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top
#3
Also im Anhang mal eine Beispieldatei,

Innerhalb des Word Dokuments gibt es 3 verschiedene Platzhalter, für die es jeweils eine eigene Prozedur gibt.
Sprich wenn dort steht #Bild1# Dann soll der Code für Bild1 ein bestimmtes Bild an der Stelle einfügen.

In Excel funktioniert das super, nur weiß ich leider nicht wie ich den Code in Word anwenden könnte.

Mfg


Angehängte Dateien
.docm   Beispieldatei.docm (Größe: 18,31 KB / Downloads: 5)
Antworten Top
#4
Hallo!

In Word ist das etwas komplizierter. Am Einfachsten wäre es wenn man eine Textmarke (soetwas ähnliches wie eine Sprungmarke in HTML) setzt, an dessen Stelle dann das Bild eingefügt wird.

Gruß, René
Antworten Top
#5
Hallo mumpel,

danke für deine Antwort, allerdings habe ich 1400 Dateien.
Diese muss ich per Hand Formatieren + Bild einfügen und in eine HTML umwandeln.
Daher habe ich das Via Excel Vba gelöst. Allerdings ist die Formatierung ein großes Problem.
Ich muss die fertige Datei noch in ein externes Programm kopieren, über Excel sieht das nicht gut aus.
Über Word ist die Formatierung allerdings perfekt.

Und da man ja Text und Bild nicht gleichzeitig kopieren kann (aus Excel),
muss ich das Bild in Word einfügen.

Der Aufbau der Dateien (mit dem Platzhalter) ist leider schon vorgegeben.
Es wäre zu viel arbeit in allen 1400 Dateien diesen auszutauschen.

Falls du dennoch eine Idee haben solltest wie ich das umsetzen könnte,
wäre ich mehr als froh darüber.

MFG
Antworten Top
#6
Das ist in Word viel einfacher als in Excel.

Wo das Bild eingefügt werden sollte sezt du das Feld {INCLUDEPICTURE }
Die Name des Bildes setztdu als {DOCVARIABLE Bild1}

Das Ergebnis: {INCLUDEPICTURE {DOCVARIABLE Bild1} }

Kann man sehen mit wechseltaste Alt-F9.

Dan ein 'tiny' Makro:


Code:
Sub M_snb()
        ThisDocument.Variables("bild1") = "     <br/>[i]Dateiupload bitte im Forum! So geht es:<a href="thread-326.html"> Klick mich!</a>[/i]<br/>"
        ThisDocument.Fields.Update
End Sub

Fertig.


Angehängte Dateien
.docm   __Beispieldatei_unterzeichnung_snb.docm (Größe: 29,37 KB / Downloads: 3)
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top
#7
@snb

wieder einmal ein interessanter Ansatz!

Dieses verschachtelte Feld konnte ich per Hand nachvollziehen, aber nicht per VBA.

Wenn ich es richtig verstanden habe, möchte der Fragesteller in vielen vorhandenen Dateien dieser Änderung vornehmen, müßte also an einer definierten Stelle diesen Code (per VBA) eintragen.

Eine Lösung ist aber sicher auch von allgemeinem Interesse.

mfg
Antworten Top
#8
z.B.

Code:
Sub M_snb()
   With ThisDocument
      .Content = String(50, vbCr)
     .Fields.Add .Paragraphs(30).Range, 67, "", False
     .Fields(1).Code.Characters(.Fields(1).Code.Characters.Count).Select
     .Fields.Add Selection.Range, 64, "Bild", 0
   end with
End Sub
oder

Code:
Sub M_snb()
   With ThisDocument
      .Content = String(50, vbCr)
      .Fields.Add ThisDocument.Paragraphs(30).Range, 67, "", False
     .Fields(1).Code.Select
      Selection.Collapse 0
      .Fields.Add Selection.Range, 64, "Bild", 0
  end with
End Sub
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top
#9
@snb

Vielen Dank!
Antworten Top
#10
Etwas 'schöner' :


Code:
Sub M_snb()
   with ThisDocument
      .Content = String(50, vbCr)
      .Fields.Add(ThisDocument.Paragraphs(30).Range, 67, "", False).Code.Select
      Selection.Collapse 0
      .Fields.Add Selection.Range, 64, "Bild1", 0
   end with
End Sub
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste