Automatisierte Berechnung mit hinterlegter Formel
#1
Guten Morgen liebes Forum,

angehangene Excel Tabelle benötigen wir zur Eingabe in unser Programm , Werdegang jetzt ist folgendermaßen :

1. Hilfstabelle oben ( mit hinterlegten Formel für Fläche in Spalte R )
2. Eingabetabelle unten -> Bauteil KZ eintragen -> Werte eintragen -> Flächenformel aus Spalte R in Hilfstabelle kopieren 

Ich würde dies gerne automatisiert haben, also wenn ich in die Hilfstabelle als bsp. KZ R eintrage er mir automatisch die hinterlegte Formel einfügt ( in diesem Fall R17 Formel kopiert in R65 ) ( Gelbe markierte Spalten in Hilfstabelle sind nötige Werte zur Berechnung )

Leider bin ich mit meinem "Wissen" am Ende - wenn ich einen Sverweis anlege erkennt er zwar das ich KZ R habe aber nimmt natürlich die Werte aus der hinterlegten Formel R17 und nicht aus R65.

Ich bedanke mich vorab für eure Hilfe  Blush


Angehängte Dateien
.xls   Miwokox Gesamt.xls (Größe: 96,5 KB / Downloads: 15)
Antworten Top
#2
Hallo,
mir ist keine Möglichkeit bekannt, eine Formel in eine andere Zelle zu übertragen.
Vielleicht geht das mit VBA, damit kenne ich mich aber nicht aus.

MfG Günter
Antworten Top
#3
Hallöchen,

hier mal ein Ansatz für eine Formellösung.

(min) 2 Voraussetzungen
1) Schreibe die Formeln in "Excel-Syntax"
2) statt Zeilennummern nimmst Du #, damit man die Zeilennummer flexibel mit WECHSELN einsetzen kann

Deine "Formelübersicht" sind bei mir rechts die beiden Spalten.
In einer Hilfsspalte - bei mir hier Spalte A, holst Du die in der Zeile zutreffende Formel. Dabei wird das Zeichen # durch die Zeilennummer ersetzt.
Du gehst in die erste Zelle der Ergebnisspalte - bei mir war das E1 - und definierst da den "Namen" Berechnen
Dann kannst Du in der Zelle =Berechnen als Funktion eintragen Smile

ABCDEFGH
1C1+D1R325RC#+D#
2C2*D2K4624KC#*D#

NameBezug
Berechnen=AUSWERTEN(INDIREKT("Tabelle1!A"&ZEILE()))

ZelleFormel
A1=WECHSELN(SVERWEIS(B1;$G$1:$H$2;2;0);"#";ZEILE())
E1=Berechnen
A2=WECHSELN(SVERWEIS(B2;$G$1:$H$2;2;0);"#";ZEILE())
E2=Berechnen
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#4
Hallo Àndre,

Vielen Dank aber ich versteh es nicht  Huh 

Was soll mir Spalte H sagen bzw. welche Funktion soll Spalte H erfüllen ? wenn ich in Excel eine Funktion =C#+D# eingebe kommt da nur eine Fehlermeldung

Um es auf die angehangene Tabelle mal zu projezieren :

Spalte C - Suchkriterium - Spalte S Formel + Ausgabe der Summe

Namen definieren klar - Funktion hinterlegen hörts bei mir schon auf  Undecided ( auswerten kenn ich garnicht - wird mir auch nicht von excel vorgeschlagen )
Antworten Top
#5
Hallöchen,
Du hast doch eine Tabelle voller Funktionen... Das wäre hier meine Spalte H.
Die schreibst Du erst mal so um dass Excel sie berechnen kann - mit den zutreffenden Spalten wo gerechnet wird.
Dann nimmst Du das = weg und setzt das # statt der Zeilennummer und dann kopierst Du die in Deine Formelübersicht
Die Buchstaben mit denen Du Formeln holen willst müssen eindeutig zugewiesen sein.
Dann bau ich Dir das Auswerten auch noch in Deine Tabelle 100
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#6
Hi,

hier mal eine Lösung per VBA. Die Routine gehört ins Code-Modul des entsprechenden Tabellenblattes.

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Bereich As Range
Dim Zelle As Range
Dim A As Range
Set Bereich = Intersect(Target, Columns("c"))    'Bei Änderung in Spalte C reagieren
If Not Bereich Is Nothing Then
    For Each Zelle In Bereich
        If Zelle.Row > 63 Then   'ab Zeile 64
            'Zelle im Bereich C7:C49 mit dem selben Eintrag suchen
            Set A = Range("C7:C49").Find(Zelle.Value, LookIn:=xlFormulas, lookat:=xlWhole)
            If Not A Is Nothing Then    'Formel aus Spalte R dieser Zeile kopieren, R = C+15
                Zelle.Offset(, 15).FormulaR1C1 = A.Offset(, 15).FormulaR1C1
            Else
                MsgBox Zelle.Value & " ist kein gültiges Kürzel"
            End If
        End If
    Next
End If
End Sub
Das passt jetzt genau auf deine Musterdatei. Wenn du daran etwas änderst, musst du die Routine entsprechend anpassen.
Gruß,
Helmut

Win10 - Office365 / MacOS - Office365
Antworten Top
#7
Hi,

als Erstes sollte der Kollege mal alle seine Formeln überprüfen, da sind m.E. einige Fehler drin.
Dann kann man einige Terme aus den Formeln herauslösen und separat als Name vergeben, da sie in mehr als der Hälfte der Formeln vorkommen.
Dazu sind einige der Formeln deutlich verbesserungswürdig (fast alle WENN-Formeln).
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#8
Moin

Hier bietet es sich an die verschiedenen Formeln in Lambdas abzulegen.
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Antworten Top
#9
Hi,

@Edgar da kann ich dir nur Recht geben. Wollte ich auch nach was zu schreiben, habe es dann aber vergessen. Danke für's Erwähnen.
Gruß,
Helmut

Win10 - Office365 / MacOS - Office365
Antworten Top
#10
Hallo Bosko,

ich arbeite seit knapp 1 Monat mit der Tabelle und hab selbst schon die Hände über den Kopf geschlagen ( es ging in erster Linie erst mal nur darum die Möglichkeiten abzuklappern ob es funktioniert ) - dass hier einiges verbessert werden muss ist außer Frage.

@shift-del

kannte diese Funktion garnicht - werde mich definitiv mal mit beschäftigen

@Hkindler

Vielen Dank für die Lösung in VBA - in der Theorie ist mein Anliegen damit erledigt

Ich bedanke mich für eure Hilfe / Ratschläge
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste