s!mplY Geschrieben 29. November 2006 Geschrieben 29. November 2006 Habe hier ein Makro erstellt, was mir aus einer excel-datei eine Tabelle in Word füllt. Nun will ich gerne die Zahlen aus Tabelle 1, Spalte 4 ab Zeile 2 (da Zeile eins mit Überschriften) addieren, leider hab ich nirgends ein Beispiel oder den "richtigen" Befehl gefunden. Vielleicht kann mir einer helfen. Mein Gedankengang, wie es aussehen sollte, wenn z.B. nur die 4. Spalten der 2. und 3. Zeile der 1. Tabele addier werden sollten: ActiveDocument.Tables(2).Cell(2, 2).Range.Text = ActiveDocument.Tables(1).Cell(2, 4).Range.Text + ActiveDocument.Tables(1).Cell(3, 2).Range.Text ^^ Wollte es erstmal mit 2 Werten testen, bevor ich mir GEdanken mache, wie ich es mache, daß er alle Zeilen der 1. TAbelle abklappert und schaut, ob Spalte 4 mit Inhalten gefüllt ist. Dafür bräuchte ich dann auch Hilfe/Link/Beispiel. Bin da schon seit 2 Wochen dran und ich habe wirklich alles mögliche gegoogelt, etc. aber mit "VBA + Word + addieren" o.ä. findet man nicht sonderbar hilfreiches für mein Problem... Zitieren
Dragon8 Geschrieben 29. November 2006 Geschrieben 29. November 2006 Also ich würde da ne schleife für angebracht halten, welche dir alle zellen in der 4 spalte einmal ausliest, schaut ob was drin steht, und wenn ja dann diesen wert zu der summe der davor addierten werte dazurechnet. Zitieren
s!mplY Geschrieben 29. November 2006 Autor Geschrieben 29. November 2006 Ja, das habe ich mir ja auch schon überlegt, theoretisch weiss ich auch was ich wie will, aber ich kenne die Befehle nicht. Haste da evtl. mal ein Beispiel, nen Link oder so? Habe vorher halt die 1. Tabelle mit WErten aus ner Exceldatei in die Wordtabelle gelesen, da schaut der, ob die Zeile frei ist und schreibt in die nächste freie, so ähnlich dachte ich das auch beim addieren, aber wie addiert man WORD-Spalteninhalte? Vorangehender Code: Private Sub WareBuchen_Click() ' Benötigte Ware aus Lagerbestand ausbuchen und in Worddokument eintragen (Bezeichnung, Menge, Einzelpreis und Gesamtpreis) Eingabe = TextBox2.Text If Eingabe = IsNumeric(var1) Then Bestand = TextBox1.Text - TextBox2.Text If Bestand < 0 Then MsgBox "Maximal" & " " & TextBox1.Text & " " & "Stück vorhanden, bitte anderen Wert eingeben" Else j = ComboBox1.ListIndex + 2 xl.worksheets(1).Cells(j, 2).Value = Bestand TextBox1.Text = xl.worksheets(1).Cells(j, 2).Value 'Nächste noch leere Zeile im Worddokument wird gesucht For y = 10 To 2 Step -1 If ActiveDocument.Tables(1).Cell(y, 1).Range.Text = vbCr & Chr(7) Then x = y 'Else ' Set oTable = ActiveDocument.Tables(1) ' Set Zeile = oTable.Rows.Add End If Next ActiveDocument.Tables(1).Cell(x, 1).Range.Text = TextBox2.Text ActiveDocument.Tables(1).Cell(x, 2).Range.Text = ComboBox1.Text ActiveDocument.Tables(1).Cell(x, 3).Range.Text = xl.worksheets(1).Cells(j, 3).Value ActiveDocument.Tables(1).Cell(x, 4).Range.Text = xl.worksheets(1).Cells(j, 3).Value * TextBox2.Text MsgBox "Ware aus Lagerbestand ausgebucht" End If Else: MsgBox "Bitte einen gültigen Wert eingeben" End If End Sub Und aus diesem Teil will ich jetzt in eine 2. TAbelle die Summe der Spalte 4 (Gesamtbetrag der einzelnen Positionen) auslesen. Btw. Was ich suche ist KEINE Hausaufgabe oder ähnliches, es geht einfach darum, daß ich es für mich gerne wissen will... Zitieren
Dragon8 Geschrieben 29. November 2006 Geschrieben 29. November 2006 Also nen Beispiel oder nen Link zu nem Beispiel kann ich dir leider nicht geben. Aber ich würde es wohl mit entweder noch einer zweiten Schleife machen, welche das zusammenrechnet was in diese spalte steht, oder du fügst es gleich in deine schon vorhandene schleife ein. Um die texte welche in der tabelle stehen zusammen addieren zu können, musste du diese erstmal in einen Zahlentyp umwandeln, dies kannst du entweder mit CInt(), wandelt den text in einen Integer um, oder CDbl(), wandelt den text in einen Double um. Zitieren
s!mplY Geschrieben 29. November 2006 Autor Geschrieben 29. November 2006 Danke Dir, CInt() hat mir gefehlt, ob es dann natürlich jetzt so klappt wie ich denke, werde ich sehen Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.