Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBS

Forumthread: VBS

VBS
23.01.2006 16:09:15
Hermann
Hallo
Hallo
muss im VBS mehrere abfragen hintereinander machen.
If E = 10 or T > 11 or Q B = 0
Else
B = 100
Mein Problem ist das sobald eine der Abragen zutrifft muss B = 0 sein muss. Wie mach ich das. Gibts ein "orif" oder sowas.
Gruss Hermann
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBS
23.01.2006 16:14:02
Josef
Hallo Hermann!
Das geht genau so wie du es gemacht hast!
'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
AW: VBS leider nicht
23.01.2006 16:21:35
Hermann
Ne ebne leider nicht. Es funktioniert nur wenn alle 3 Abfragen False sind.
'Bestellpunkt berechnen
'BPKT = Berechnen mit Abfrage Set=1/A-Code=K/ØVJP5/ If po.Table.AsStringByName("IBF", "ASCII_10") = "S" Or _
po.Table.AsCurrencyByName("ADO", "SET_FLAG") = 0 Or _
Exceltabelle.WOrksheets("Daten").Cells(i, 11) > 0 Then
BPKT = Exceltabelle.WOrksheets("Daten").Cells(i, 10)
MsgBox "BPKT = " & BPKT
Else
If Exceltabelle.WOrksheets("Daten").Cells(i, 10) >= (5*Exceltabelle.WOrksheets ("Daten").Cells(i, 8)) Then
BPKT = (5 * Exceltabelle.WOrksheets("Daten").Cells(i, 8))
Else
If Exceltabelle.WOrksheets("Daten").Cells(i, 10) BPKT = (2 * Exceltabelle.WOrksheets("Daten").Cells(i, 8))
End If
End If
MsgBox "BPKT = " & BPKT
BPKT = 0
End If
po.Table.AsCurrencyByName("LAO", "BESTELL_PK2") = BPKT
po.save
Anzeige
AW: VBS leider nicht
23.01.2006 16:31:29
Josef
Hallo Hermann!
Dann setze die einzelnen bedingungen in Klammern!

If (po.Table.AsStringByName("IBF", "ASCII_10") = "S") Or _
(po.Table.AsCurrencyByName("ADO", "SET_FLAG") = 0) Or _
(Exceltabelle.WOrksheets("Daten").Cells(i, 11) > 0) Then

'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
AW: VBS leider nicht
23.01.2006 16:48:29
Hermann
Ja aber es springt mir bei der ersten abfrage "die eigentlich False währe" direkt auf BPKT = Exceltabelle.WOrksheets("Daten").Cells(i, 10) anstatt auf
BPKT = 0
AW: VBS leider nicht
23.01.2006 16:55:26
Josef
Hallo Hermann!
Probier mal so!
'Bestellpunkt berechnen
'BPKT = Berechnen mit Abfrage Set=1/A-Code=K/ØVJP<0/>5/<2
If (po.Table.AsStringByName("IBF", "ASCII_10") = "S") Or _
  (po.Table.AsCurrencyByName("ADO", "SET_FLAG") = 0) Or _
  (Exceltabelle.Worksheets("Daten").Cells(i, 11) > 0) Then
  BPKT = Exceltabelle.Worksheets("Daten").Cells(i, 10)
  MsgBox "BPKT = " & BPKT
Else
  If (Exceltabelle.Worksheets("Daten").Cells(i, 10) >= (5 * Exceltabelle.Worksheets("Daten").Cells(i, 8))) Then
    BPKT = (5 * Exceltabelle.Worksheets("Daten").Cells(i, 8))
  ElseIf (Exceltabelle.Worksheets("Daten").Cells(i, 10) <= (2 * Exceltabelle.Worksheets("Daten").Cells(i, 8))) Then
    BPKT = (2 * Exceltabelle.Worksheets("Daten").Cells(i, 8))
  End If
  MsgBox "BPKT = " & BPKT
  BPKT = 0
End If

po.Table.AsCurrencyByName("LAO", "BESTELL_PK2") = BPKT
po.Save

'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
AW: VBS leider nicht
23.01.2006 17:25:10
Hermann
Sorry aber stimmt noch immer nicht aber vielen Dank!!
Das Script springt mir von der Zeile
(po.Table.AsStringByName("IBF", "ASCII_10") = "S")
immer auf
BPKT = Exceltabelle.Worksheets("Daten").Cells(i, 10)
anstatt auf
BPKT = 0
Sollte eine der ersten 3 abfragen "False" sein muss der BPKT = 0 sein. Ansonnsten muss die Abragen mit > und BPKT = Exceltabelle.WOrksheets("Daten").Cells(i, 35) sein.
Anbei noch der ganze Code
'Bestellpunkt berechnen
'BPKT = Berechnen mit Abfrage Set=1/A-Code=K/ØVJP5/ If (po.Table.AsStringByName("IBF", "ASCII_10") = "S") Or _
(po.Table.AsCurrencyByName("ADO", "SET_FLAG") = 0) Or _
(Exceltabelle.WOrksheets("Daten").Cells(i, 11) > 0) Then
BPKT = Exceltabelle.WOrksheets("Daten").Cells(i, 10)
MsgBox "BPKT = " & BPKT
Else
If Exceltabelle.WOrksheets("Daten").Cells(i, 35) >= (5 * Exceltabelle.WOrksheets ("Daten").Cells(i, 33)) Then
BPKT = (5 * Exceltabelle.WOrksheets("Daten").Cells(i, 33))
ElseIf Exceltabelle.WOrksheets("Daten").Cells(i, 35) BPKT = (2 * Exceltabelle.WOrksheets("Daten").Cells(i, 33))
Else
BPKT = Exceltabelle.WOrksheets("Daten").Cells(i, 35)
End If
MsgBox "BPKT = " & BPKT
BPKT = 0
End If
po.Table.AsCurrencyByName("LAO", "BESTELL_PK2") = BPKT
po.save
Anzeige
AW: VBS leider nicht
23.01.2006 17:39:30
Josef
Hallo Hermann!
Bestellpunkt berechnen
'BPKT = Berechnen mit Abfrage Set=1/A-Code=K/ØVJP<0/>5/<2
If (po.Table.AsStringByName("IBF", "ASCII_10") = "S") Or _
  (po.Table.AsCurrencyByName("ADO", "SET_FLAG") = 0) Or _
  (Exceltabelle.Worksheets("Daten").Cells(i, 11) > 0) Then
  BPKT = Exceltabelle.Worksheets("Daten").Cells(i, 10)
  MsgBox "BPKT = " & BPKT
  If Exceltabelle.Worksheets("Daten").Cells(i, 35) >= (5 * Exceltabelle.Worksheets("Daten").Cells(i, 33)) Then
    BPKT = (5 * Exceltabelle.Worksheets("Daten").Cells(i, 33))
  ElseIf Exceltabelle.Worksheets("Daten").Cells(i, 35) <= (2 * Exceltabelle.Worksheets("Daten").Cells(i, 33)) Then
    BPKT = (2 * Exceltabelle.Worksheets("Daten").Cells(i, 33))
  Else
    BPKT = Exceltabelle.Worksheets("Daten").Cells(i, 35)
  End If
Else
  MsgBox "BPKT = " & BPKT
  BPKT = 0
End If

po.Table.AsCurrencyByName("LAO", "BESTELL_PK2") = BPKT
po.Save

'******************************
'* Gruß Sepp
'*
'* Rückmeldung wäre nett!
'******************************

Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige