Hallo zusammen,
ich habe eine Problem mit unseren dem Scriptings.
Unsere Rechner werden nach und nach von Excel 32-Bit auf 64 umgestellt und mit 64 bit funktionieren die Sciptings nicht mehr in denen Daten im Materialstamm geändert werden sollen. Alle Anderen funktionieren - auch Material anlegen.
Ich vermute es liegt an der Abfrage der Sichten.
Kann mir jemand vielleicht helfen, wie man die VBAs umschreiben muss?
Vielen Dank schonmal.
Grüße Laura
Hier der Code:
Set rfc = FunctionCtrl.Add("RFC_READ_TABLE")
With rfc
.exports("QUERY_TABLE") = "MARA"
.exports("DELIMITER") = "|" 'Delimiter
End With
Set T_I_Options = rfc.Tables("OPTIONS")
Set T_I_Fields = rfc.Tables("FIELDS")
Set T_E_Data = rfc.Tables("DATA")
T_I_Options.AppendRow
T_I_Options(1, "TEXT") = "MANDT EQ '500' and MATNR EQ '" & W_Material & "'""" ' Mandat = 500
T_I_Fields.AppendRow
T_I_Fields(1, "FIELDNAME") = "PSTAT" 'liefere zurück den Inhalt des Feldes MARA-PSTAT
'Aufruf des Funktionsbaustein "RFC_READ_TABLE"
ret = rfc.Call
If T_E_Data.RowCount > 0 And ret = True Then
strDataRow = T_E_Data(1, 1)
DataRow = Split(strDataRow, "|")
SAP_MSTAE = DataRow(0)
End If
Call T_E_Data.freetable
Call T_I_Fields.freetable
Call T_I_Options.freetable
W_Sicht = SAP_MSTAE 'speichere den Inhalt des Feldes MARA-PSTAT in den Variable W_Sicht
'***** Anzahl der Sichen zählen ******************
Dim Wort As String, Buchstabe As String, i As Integer
Dim W_zaehler, W_zaehler1, W_zaehler2, W_zaehler3, W_zaehler4, W_zaehler5 As Integer
W_zaehler = -1
For i = 1 To Len(W_Sicht)
Buchstabe = Mid$(W_Sicht, i, 1)
If Buchstabe = "K" Then 'Grundaten
W_zaehler = W_zaehler + 2
ElseIf Buchstabe = "C" Then 'Klassifizierung
W_zaehler = W_zaehler + 1
ElseIf Buchstabe = "V" Then 'Vertrieb
W_zaehler = W_zaehler + 5
ElseIf Buchstabe = "E" Then 'Einkauf
W_zaehler = W_zaehler + 3
ElseIf Buchstabe = "D" Then 'Disposition
W_zaehler = W_zaehler + 4
ElseIf Buchstabe = "P" Then 'Prognose
W_zaehler = W_zaehler + 1
ElseIf Buchstabe = "A" Then 'Arbeitsvorbereitung
W_zaehler = W_zaehler + 1
ElseIf Buchstabe = "L" Then 'Lagerung
W_zaehler = W_zaehler + 2
End If
Next i
W_zaehler1 = W_zaehler - 1
W_zaehler2 = W_zaehler - 3
W_zaehler3 = W_zaehler - 4
W_zaehler4 = W_zaehler - 5
W_zaehler5 = W_zaehler - 6