bräuchte nochmal kurz hilfe :-)
Ich habe ein Word Formular mit Steuerelementen.
In Excel lese ich diese mit einem Macro ein.
Nun hab ich das Problem, dass er mir 58 Steuerelemente problemlos nach Excel überträgt, beim 59 und 60sten dies aber nicht mehr macht, obwohl weder in Word noch im VBA Code unterschiede zu erkennen sind.
Gibt es eine max. Anzahl an Steuerelementen, die ich nach Excel übertragen kann?
Kann ich mir zwar nicht vorstellen, aber ich hab sonst keine vernünftige Erklärung.
hier der Code:
Public Sub Main2()
Dim objWord As Object, objDocument As Object
Dim IDNummer As Long
Dim rZelle As Range
Dim Zeile
On Error Resume Next
Set objWord = GetObject(Class:="Word.Application")
Set objDocument = objWord.Documents(1)
'IDNummer aus aktuellen Word Dok auslesen
If objDocument.ContentControls.Count = 0 Then
MsgBox "Es ist keine Vorlage (Word) geöffnet."
Exit Sub
Else
With objDocument.ContentControls
IDNummer = .Item(1).Range.Text
End With
Sheets("Datenbank").Select
With ActiveSheet.Rows
Set rZelle = Range("A5:A50000").Find(What:=IDNummer, LookAt:=xlWhole, LookIn:=xlValues, _
_
SearchOrder:=xlByRows)
End With
If rZelle Is Nothing Then
Zeile = Sheets("Datenbank").Cells(Rows.Count, 1).End(xlUp).Row + 1
With objDocument.ContentControls
Sheets("Datenbank").Cells(Zeile, 1) = .Item(7).Range.Text ' CV ID Nummer
End With
Else
Zeile = rZelle.Row
End If
With objDocument.ContentControls
Sheets("Datenbank").Cells(Zeile, 2) = .Item(13).Range.Text ' Antragsteller
Sheets("Datenbank").Cells(Zeile, 3) = .Item(11).Range.Text ' Thema
Sheets("Datenbank").Cells(Zeile, 4) = .Item(12).Range.Text ' Beschreibung
'Item(14) nicht vorhanden ?
Sheets("Datenbank").Cells(Zeile, 5) = .Item(15).Range.Text ' KST
Sheets("Datenbank").Cells(Zeile, 6) = .Item(16).Range.Text ' ORG ID / Kontierung
Sheets("Datenbank").Cells(Zeile, 7) = .Item(17).Range.Text ' Bestellnummer
Sheets("Datenbank").Cells(Zeile, 8) = .Item(20).Range.Text ' Datum
Sheets("Datenbank").Cells(Zeile, 9) = .Item(19).Range.Text ' Auftragscluster
Sheets("Datenbank").Cells(Zeile, 10) = .Item(8).Range.Text ' PS ID
Sheets("Datenbank").Cells(Zeile, 11) = .Item(21).Range.Text ' Angebot h
Sheets("Datenbank").Cells(Zeile, 12) = .Item(22).Range.Text ' Angebot Euro
Sheets("Datenbank").Cells(Zeile, 13) = .Item(9).Range.Text ' Vorr Nr
Sheets("Datenbank").Cells(Zeile, 14) = .Item(10).Range.Text ' Inv Nr.
Dim test As Integer
'Summenberechnung Euro und Stunden
test = Val(.Item(24).Range) + Val(.Item(26).Range) + Val(.Item(28).Range) + Val(.Item( _
30).Range) + Val(.Item(32).Range) + Val(.Item(34).Range) + Val(.Item(36).Range) + Val(.Item(38).Range) + Val(.Item(40).Range) + Val(.Item(42).Range) + Val(.Item(44).Range) + Val(.Item(46).Range) + Val(.Item(48).Range) + Val(.Item(50).Range) + Val(.Item(52).Range)
Sheets("Datenbank").Cells(Zeile, 15) = test
test = Val(.Item(25).Range) + Val(.Item(27).Range) + Val(.Item(29).Range) + Val(.Item( _
31).Range) + Val(.Item(33).Range) + Val(.Item(35).Range) + Val(.Item(37).Range) + Val(.Item(39).Range) + Val(.Item(41).Range) + Val(.Item(43).Range) + Val(.Item(45).Range) + Val(.Item(47).Range) + Val(.Item(49).Range) + Val(.Item(51).Range) + Val(.Item(53).Range)
Sheets("Datenbank").Cells(Zeile, 16) = test
Sheets("Datenbank").Cells(Zeile, 17) = .Item(54).Range.Text ' Gesamtkosten
Sheets("Datenbank").Cells(Zeile, 18) = .Item(1).Checked
Sheets("Datenbank").Cells(Zeile, 19) = .Item(2).Checked
Sheets("Datenbank").Cells(Zeile, 20) = .Item(3).Checked
Sheets("Datenbank").Cells(Zeile, 21) = .Item(4).Checked
Sheets("Datenbank").Cells(Zeile, 22) = .Item(5).Checked
Sheets("Datenbank").Cells(Zeile, 23) = .Item(55).Checked
Sheets("Datenbank").Cells(Zeile, 24) = .Item(56).Checked
Sheets("Datenbank").Cells(Zeile, 25) = .Item(57).Checked
Sheets("Datenbank").Cells(Zeile, 26) = .Item(58).Checked
Sheets("Datenbank").Cells(Zeile, 27) = .Item(59).Checked
Sheets("Datenbank").Cells(Zeile, 28) = .Item(60).Checked
End With
'Word Dokument schliessen
objDocument.Close False
Set objDocument = Nothing
Set objWord = Nothing
End If
End Sub
In Spalte 27 und 28 wird nix angezeigt ?Hat jemand ne Idee ?
Gruß
Stefan