Das Clever-Excel-Forum.de - Treffen
findet vom 15. - 17. September 2017 in Thüringen / Region Großer Inselsberg statt. Hotelbuchung ab sofort möglich.


Lückenauffüllung von zwei Unbekannten
#1
Hallo,
ich habe mich hier angemeldet, weil ich eine Lösung für folgendes Problem suche und hoffe, dass mir hier geholfen wird.

Ich habe drei Konstanten, die jeweils in einer eigenen Spalte im Kopf der Tabelle stehen. Diese stehen auch in einen Bezug zueinander.
Nun soll in den unterstehenen Zeilen nur ein Wert in einer beliebige Spalte eingetragen werden und die restlichen zwei Werte der gleichen Zeile sollen automatisch gefüllt werden.
Zum besseren Verständnis nachfolgendes Bild mit der Erklärung der rechnerischen Verhältnisse und Bezüge.
?mage

Die grünen Werte trägt der User ein, die roten werden von Excel gefüllt.
Ich habe schon versucht mit der Wenn-Und-Oder-Funktionen etwas zu basteln, bin aber kläglich gescheitert. Vielleicht sehe ich auch den Wald vor lauter Bäumen nicht, setze eine Klammer zuviel oder zuwenig... keine Ahnung.Confused

Natürlich sollten die Zeilen auch beliebig oft kopiert werden können... 29

Für alle, die zur Lösung beitragen schonmal ein fettes Dankeschön vorab.28
to top
#2
Hi Graupe,

lade uns doch bitte anstelle des Bildes (d)eine (Beispiel)Tabelle hoch.
?mage

Misserfolg ist eine Chance, es beim
nächsten Mal besser zu machen.

(Henry Ford)
http://www.sprueche-zum-nachdenken.eu
to top
#3
Hallo Graupe,

so richtig kann ich das Problem nicht erkennen - ich glaube, Du willst Dich in allen Zeilen auf die erste berufen? B1 ist ein relativer Bezug. B$1 ist ein absoluter Zeilenbezug, dh. beim Kopieren bleibt die 1 und nur das B ändert sich, wenn Du die Spalte wechselst. Schreibst Du $B$1, bleibt auch die Spalte. Mit $B1 würde sich die Zeile ändern ...
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
to top
#4
@WillWissen
Danke für die Antwort.
Ja, kann ich machen, nur wäre diese Tabelle recht nackig. Insofern wäre sie nicht sehr hilfreich.
Außerdem weiß ich bis jetzt noch nicht wie ich das machen sollte. Habe erst jetzt den Hinweisthread dazu gefunden.
Ich poste aber morgen mal meinen Lösungsvorschlag. Der liegt auf dem Rechner auf Arbeit.

@schauan
Auch dir Danke
Richtig, ich möchte alle Zeilen auf die erste berufen. Das mit den relativen und absoluten Bezug ist für mich jetzt erstmal das kleinere Problem. Damit wollte ich mich erst beschäftigen, wenn das Hauptproblem gelöst ist.
Das ist nach wie vor, dass ich nicht weiß, wie ich es hinbekomme, dass die Felder automatisch gefüllt werden.

Ich bleibe jetzt mal nur in der Zeile 2 meine Bildes.
Der User trägt hier bspw. in die A-Spalte den Wert "5" ein. Die Zellen B2 und C2 füllen sich entsprechend der Bezüge (B2=A2*B1 (oder auch A2*8) und C2=B2/C1 (oder auch B2/1598).
Aber, er könnte auch nur den Wert "40" in die B-Spalte eintragen. In dem Fall sollten sich die Zellen A2 und C2 automatisch füllen.
Das heißt also die komplette Zeile ist leer und es ist nicht bekannt, welchen Wert der User einträgt. Dennoch sollte die beiden Unbekannten berechnet werden.

Ist das überhaupt möglich? Sicher? Oder? 29
to top
#5
Hi,

(09.11.2014, 14:52)Graupe2904 schrieb: Nun soll in den unterstehenen Zeilen nur ein Wert in einer beliebige Spalte eingetragen werden und die restlichen zwei Werte der gleichen Zeile sollen automatisch gefüllt werden.
Zum besseren Verständnis nachfolgendes Bild mit der Erklärung der rechnerischen Verhältnisse und Bezüge.

Die grünen Werte trägt der User ein, die roten werden von Excel gefüllt.
  • Du hast zum Einen eine falsche Formel in A2
  • Du kannst in einer Zelle entweder Formeln oder Zahlen stehen haben
  • Wenn Du es kopieren willst, müssen überall die Formeln drin stehen, dann hast Du aber Zirkelbezüge
  • wie soll Excel wissen, ob für B2 die eine oder die andere Formel genommen werden soll

Tabelle1
ABCD
1181598
25402,50312891113892E-02errechnet aus A2
340
410800,05Beispiel
5201600,1Beispiel
6403200,2Beispiel
7
8A2=B2/B1
9B2=A2*B1 oder C2*C1
10C2=B2/C1

verwendete Formeln
Zelle Formel Bereich N/A
B2=A2*$B$1
C2=B2/$C$1
B3=C2*$C$1
Excel-Inn.de
Hajo-Excel.de
XHTML-Tabelle zur Darstellung in Foren, einschl. der neuen Funktionen ab Version 2007
Add-In-Version 18.19 einschl. 64 Bit

Gruß Ralf

?mage

Die deutsche Rechtschreibung ist Freeware, d.h. du kannst sie kostenlos nutzen.
Allerdings ist sie nicht Open Source, deswegen darfst du sie nicht verändern oder in veränderter Form veröffentlichen.
to top
#6
Hi,

Zitat:Das heißt also die komplette Zeile ist leer und es ist nicht bekannt, welchen Wert der User einträgt. Dennoch sollte die beiden Unbekannten berechnet werden.

Ist das überhaupt möglich? Sicher? Oder? 29

ein eindeutiges Nein. Du kannst in einer Zelle nicht eine Formel stehen haben und gleichzeitig Werte eintragen. Und eben dazu benötigen wir ein Mustertabelle mit genauen Angaben, was wo wann berechnet werden soll.(Nachbauen will halt keiner Wink )
?mage

Misserfolg ist eine Chance, es beim
nächsten Mal besser zu machen.

(Henry Ford)
http://www.sprueche-zum-nachdenken.eu
to top
#7
(09.11.2014, 16:05)WillWissen schrieb: ein eindeutiges Nein. Du kannst in einer Zelle nicht eine Formel stehen haben und gleichzeitig Werte eintragen.

das würde nur über VBA (Makro) gehen: Du trägst die grünen Zahlen ein und dann schaut das Makro (Worksheet_Change()), in welcher Zelle die Zahl steht und trägt entsprechend die Formeln oder gleich das Ergebnis ein.
Gruß Ralf

?mage

Die deutsche Rechtschreibung ist Freeware, d.h. du kannst sie kostenlos nutzen.
Allerdings ist sie nicht Open Source, deswegen darfst du sie nicht verändern oder in veränderter Form veröffentlichen.
to top
#8
Hallo Graupe,

das Makro, welches in das schon vorhandene VBA-Modul der entsprechenden Tabelle kommt, sieht dann so aus:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  Dim rngZ As Range
  Set rngZ = Application.Intersect(Target.Cells(1), Columns("A:C"))
  If Not rngZ Is Nothing Then
    On Error Resume Next
    With rngZ
      If rngZ.Row > 1 Then
        Application.EnableEvents = False
        Select Case .Column
          Case 1
            .Offset(, 1).Value = .Value * Cells(1, 2).Value
            .Offset(, 2).Value = .Offset(, 1).Value / Cells(1, 3).Value
          Case 2
            .Offset(, -1).Value = .Value / Cells(1, 2).Value
            .Offset(, 1).Value = .Value / Cells(1, 3).Value
          Case 3
            .Offset(, -1).Value = .Value * Cells(1, 3).Value
            .Offset(, -2).Value = .Offset(, -1).Value / Cells(1, 2).Value
        End Select
        Application.EnableEvents = True
      End If
    End With
  End If
End Sub

Gruß Uwe
to top
#9
Oh Gott, auf was hab ich mich da nur eingelassen? 20

Erstmal Danke an alle, die sich meiner angenommen haben.23
Mal sehen was ich damit anfange... Ne Nacht drüber schlafen... Hab jetzt erstmal die Faxen dicke
to top


Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Nach zwei Kriterien in zwei Spalten gefilterte Zeilen lückenlos kopieren (oder so) Sommer 2 135 26.09.2016, 12:40
Letzter Beitrag: Sommer
  Matrix mit 3 unbekannten und größerer Wertebereich Ameisenbändiger 5 116 21.09.2016, 09:25
Letzter Beitrag: Ameisenbändiger

Gehe zu:


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