Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
796to800
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
796to800
796to800
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Preise aktualisieren

Preise aktualisieren
31.08.2006 09:37:05
Cordula
Guten Morgen Excel-Freunde,
ich habe im Register „Vergleich „ 2 nebeneinander liegende Tabellen, die identisch aufgebaut sind: von A8:F8 steht Artikelnummer, Bezeichnung, Menge, Einzelpreis, Mengeneinheit, Gesamtpreis und von H8 bis M8 noch einmal das gleiche.
Tabelle 1 wird mit Daten gefüllt (ist dann das Original). Über einen Button kopiere ich die Daten in die rechts stehende Tabelle mit folgendem Code (von Herrn Herber).

Sub DatenUebertragen()
Application.EnableEvents = False
Columns("H:M").Value = Columns("A:F").Value
Application.EnableEvents = True
End Sub

In der gleichen Arbeitsmappe habe ich einen Artikelstamm, nun möchte ich über ein Button den EK-Preis in der rechts stehenden Tabelle aus dem hinterlegten Artikelstamm aktualisieren. Das soll über ein Button realisiert werden, da die Preise nur nach Bedarf aktualisiert werden sollen.
Wäre toll, wenn ihr eine Lösung dafür hättet.
Danke schon einmal im voraus!
Gruß
Cordula

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

Betreff
Datum
Anwender
Anzeige
AW: Preise aktualisieren
31.08.2006 10:28:36
u_
Hallo,
Artikelnummer in Artikelstamm!A, Preise in Artikelstamm!B

Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
With Range(Cells(2, 11), Cells(65536, 11).End(xlUp))
.FormulaR1C1 = "=VLOOKUP(RC8,Artikelstamm!C1:C2,2,0)"
.Value = .Value
End With
Application.ScreenUpdating = True
End Sub

Gruß
Lesen gefährdet die Dummheit
AW: Preise aktualisieren
31.08.2006 11:30:11
Cordula
Hallu u_
habe dein Code ausprobiert, die Zellbezüge angepasst. Bevor ich „Application…“ in Hochkomma gesetzt habe, öffnete Excel mir das Dialogfenster ÖFFNEN. Da sich die Stammdaten in der gleichen Mappe befinden, benötigte ich dieses Fenster nicht (also, ich habe keine Ahnung, habe es einfach ausprobiert und klappte :-)
Was leider nicht passt ist, das die Verweis-Funktion in die Zelle eingetragen wird und per Code (Target.Offset(0, 2).Value = Target.Offset(0, -1).Value * Target.Value) lasse ich den Gesamtpreis berechnen, somit funktioniert die Berechnung nicht mehr! Die Zellen benötigen tatsächlichen eine Wert.
der geänderte Code:

Private Sub aktuell()
'   Application.ScreenUpdating = False
With Range(Cells(8, 11), Cells(65536, 11).End(xlUp))
.FormulaR1C1 = "=VLOOKUP(RC8,Stammdaten,5,0)"
.Value = .Value
End With
' Application.ScreenUpdating = True
End Sub

Hast du eine Lösung? Wäre toll!
Gruß
Cordula
Anzeige
AW: Preise aktualisieren
31.08.2006 14:11:45
u_
Hallo,
1. bewirkt Application.ScreenUpdating= Flase/ True nur das Ab- bzw. Einschalten der Bildschirmaktualisierung und damit eine schnellere Abarbeitung der Prozedur.
2..Value=.Value wandelt die Formeln in Werte um, was aber eigentlich egal ist. Wenn man mit Formelergebnissen nicht rechnen könnte, könnte man ja gleich einen Zettel nehmen.
Versuch das mal:

Private Sub aktuell()
On Error GoTo ERRHDL
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
With Range(Cells(8, 11), Cells(65536, 11).End(xlUp))
.FormulaR1C1 = "=VLOOKUP(RC8,Stammdaten,5,0)"
.Value = .Value
With .Offset(0, 2)
.FormulaR1C1 = "=RC[-2]*RC[-3]"
End With
End With
ERRHDL:
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
End Sub

Gruß
Lesen gefährdet die Dummheit
Anzeige
Perfekt!!
31.08.2006 14:57:31
Cordula
Hallo u_
Perfekt! Funktioniert! Nur habe ich nicht bedacht, dass in M4 der Gesamtpreis berechnet wird (per VBA). Das macht Excel nun nicht mehr automatisch. Ich muss erst die Artikelnummer noch einmal eingeben, dann aktuealisiert er mir den Gesamtpreis.
Hättest du hier vielleicht auch eine Lösung? Wobei ich dir wirklich schon sehr dankbar bin, dass das "andere" funktioniert!
Gruß
Cordula
AW: Perfekt!!
31.08.2006 16:08:33
u_
Hallo,
ist die Berechnung auf manuell?
Das hier:
With .Offset(0, 2)
.FormulaR1C1 = "=RC[-2]*RC[-3]"
End With
schreibt in M die Formel =K8*J8 etc.
Gruß
Lesen gefährdet die Dummheit
Anzeige
AW: Perfekt!!
31.08.2006 16:27:10
cordula
Hey u_
meine Tabelle ist wie folgt:
EK 9,00 € (Sp M4)
Zuschlag % 0,00 € (Sp M5)
VK 9,00 € (Sp M6)
Einzelpreis Preis
2,00 5 Kg 10,00 (Sp M8)
1,00 5 St 8,00 (Sp M9)
Dein Code "With.Offset..." berechnet mir ab M8 alles korrekt (J*K = 2*5)
Nun möchte ich, dass mir auch die Zelle M4 = Gesamt-EK-Preis(wenn möglich natürlich auch M5 und M6!!) automatisch berechnet wird. Bisher funktionierte das per VBA. Geht jetzt aber nicht mehr. Wie gesagt, ich muss erst eine Artikelnummer noch einmal eingeben, dann funktioniert es.
Gruß
Cordula
@u_ Habe es hingekriegt!
31.08.2006 16:45:11
Cordula
Hey u_
hab es doch noch hinbekommen, und zwar am Schluss deines Codes Call SumChanges(8)
eingefügt und schon klappte es! Vielen vielen Dank u_ für deine Mühe und Geduld!
Gruß
Cordula
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige