Visual Basic und Arrays?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Visual Basic und Arrays?

    ich greife mit visual basic auf nen Funktionsbaustein in SAP R/3 zu.
    dazu muss ich die inputtabelle des bausteins füllen ihn aufrufen und die outputtabelle lesen.
    PHP-Code:
    with m_oRFC.Tables("I_URL")
       .
    AddRow
       
    .Columns(1).Value(1)="bar"
       
    .Columns("foo").Value(1)="bar"
    End With 
    das geht beides. ich kann auf die elemente des arrays Columns entweder über den Index zugreifen oder über deren Namen. wenn ich allerdings sowas mache, geht es nicht:
    PHP-Code:
    Dim l_sfoo As String
    l_sfoo
    ="foo"
    with m_oRFC.Tables("I_URL")
       .
    AddRow
       
    .Columns(l_sfoo).Value(1)="bar"
    End With 
    weiß jemand warum?

    hintergrund der geschichte ist, dass das programm parameter übergeben kriegt in der form
    Code:
    meine.exe /Spaltenname1InTabelle:Wert1 /Spaltenname2InTabelle:Wert2
    ich aber nicht weiß wieviel parameter es sind und wie sie heißen.
    Daher speichere ich die Parameter in 2 Arrays (einmal Name des Parameters und einmal Wert des Parameters), da es ja leider keine assoziativen Arrays gibt bei VB (afaik)
    das füllen der tabelle sollte so laufen:
    PHP-Code:
    Dim l_iZaehler As Integer
    with m_oRFC
    .Tables("I_URL")
       .
    AddRow
       
    for l_iZaehler=LBound(ma_sParameterNameto UBound(ma_sParameterName)
       
    //LBound = untere Grenze des Arrays, UBound = obere Grenze
          
    .Columns(ma_sParameterName(l_iZaehler)).Value(1)=ma_sParameterWert(l_iZaehler)
       
    Next l_iZaehler
    End With 
    und das tut es nicht (Error: Type Mismatch) und es liegt definitiv an .Columns(ma_sParameterName(l_iZaehler)).Value(1)=

    Hat jemand ne Idee außer den namen abzufragen, mit dem einen array zu vergleichen und das andere da einzutragen? wär je ne schleife mehr, die auf die bremse drückt
    Ich denke, also bin ich. - Einige sind trotzdem...
Lädt...
X