Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Bestellmenge berechnen
#41
Hallo neopa,

die Formel passt super.
Vielen Dank. :18: :18: :18: :18:

jetzt fehlt im Moment nur folgendes Problemchen
Ps : vielleicht fählt dir eine Möglichkeit ein wie Ich das Problem der Zeilen 30-32 lösen kann .
Die Zelle  H 30 sollte mit 2,6 multipliziert werden
Die Zelle  H 31 sollte mit 3,1 multipliziert werden
Die Zelle  H 32 sollte mit 4,0 multipliziert werden

dann komm Ich ganz langsam an mein Ziel ..... :19: :19: :19: :19: :19:
Antworten Top
#42
Hallo,

mit Deinen Vorgaben:

- B19=2,0
- Längenangaben in A30:A32 größer gleich 1000

- Deiner Teilformel  
Code:
AUFRUNDEN((B19-0,5)/0,8;0)+1
- deren Grundlage sich mir hier hier noch nicht erschließt (also warum von B19 konstant 0,5 m abgezogen werden muss
  und dieses Teilergebnis durch 0,8 geteilt und abschließend noch eine 1 addiert wird.)
-  und warum für H30:H32 überhaupt eine Gesamtlänge als Menge ermittelt werden soll und nicht wie in H25:H28 ein Stückzahl?
- scheinbar keine Berücksichtigung von E20 erfolgen soll, oder?
- und sich als Ergebnis im Beispiel 7,8 (m) ergeben soll

hab ich Dir für H30 nun nachfolgende Formel aufgestellt, die Du ziehend nach unten kopieren kannst:

Code:
=WENN(A30="";"";(AUFRUNDEN((B$19-0,5)/0,8;0)+1)*(RECHTS(A30;4)/1000>=B$19)*(RECHTS(0&A29;4)/1000<B$19)*RECHTS(A30;4)/1000)
Gruß Werner
.. , - ...
[-] Folgende(r) 1 Nutzer sagt Danke an neopa für diesen Beitrag:
  • wavemaster
Antworten Top
#43
Hallo neopa,
Die Formel passt soweit, jedoch wird hier nur die 1 Lage berechnet. Die zweite Lage muss dann mit dem Faktor 0,5 berechnet werden (erste Lage hat 0,8)

Danke soweit  :18:
Antworten Top
#44
Guten Morgen,

... dann in H30 wohl z.B. folgende Formel:


Code:
=WENN(A30="";"";((AUFRUNDEN((B$19-0,5)/0,8;0)+1)*(RECHTS(A30;4)/1000>=B$19)*(RECHTS(0&A29;4)/1000<B$19)+
(AUFRUNDEN((D$19-0,5)/0,5;0)+1)*(RECHTS(A30;4)/1000>=D$19)*(RECHTS(0&A29;4)/1000<D$19))*RECHTS(A30;4)/1000)


und diese Formel nach unten kopieren. In G30:G32 muss dann allerdings anstelle "Stück" nun "m" als Einheit angegeben werden.
Gruß Werner
.. , - ...
[-] Folgende(r) 1 Nutzer sagt Danke an neopa für diesen Beitrag:
  • wavemaster
Antworten Top
#45
Guten Morgen neopa,

also die Formel ist soweit in Ordnung :18: ,

jedoch hab ich 2 klitzekleines Problemchen:
  • in deiner Formel taucht die Zeile 29 auf. Die Formel funktioniert nur wenn die Zeile 29 leer ist. Diese Zeile ist  oder wird belegt, demnach bringt die Formel einen Fehler. Was bewirkt die Zeile 29 in der Formel kann dies geändert werden.
  • wenn Feld B 19 oder D 19 gleich / kleiner als 1,0m ist wirft die Formel 1 Stab zuwenig aus. Wobei ich sage das kommt relativ selten vor wenn sogar garnicht das eine Decke schmäler als 1 m ist.
Also sollte nur der Punkt 1 nochmals überdacht werden.



Danke sonst alles Super


Angehängte Dateien
.xlsx   Test4_2019.xlsx (Größe: 14,21 KB / Downloads: 5)
Antworten Top
#46
Hallo Thomas,

zu 1.) ein Schnellschuss wäre:

In H30:

Code:
=WENN(A30="";"";((AUFRUNDEN((B$19-0,5)/0,8;0)+1)*(RECHTS(A30;4)/1000>=B$19)*(WENN(ZEILE()=30;1;RECHTS(0&A29;4)/1000<B$19))+
(AUFRUNDEN((D$19-0,5)/0,5;0)+1)*(RECHTS(A30;4)/1000>=D$19)*(WENN(ZEILE()=30;1;RECHTS(0&A29;4)/1000<D$19)))*RECHTS(A30;4)/1000)

und diese nach unten kopieren.

zu 2) für Breiten (und Längen) kleiner als 2,6m/2, müsste man mE sowieso eine andere Berechnung anstellen, weil dann ja aus einer Latte zwei nutzungsfähige gemacht werden könnten und bereits dafür eine aufwendigere Berechnung erforderlich wäre. Noch aufwendiger würde die Berechnung, wenn z.B. beide Seitenlängen kurz sind und oder wenn überhaupt eine Optimierungsberechnung vorgenommen werden könnte, bei entsprechenden Kombinationen von Länge und Breite und der Möglichkeit der Nutzung von Zuschneidens der Latten.
Gruß Werner
.. , - ...
[-] Folgende(r) 1 Nutzer sagt Danke an neopa für diesen Beitrag:
  • wavemaster
Antworten Top
#47
Hallo neopa,
das mit dem Punkt 2 lassen wir wie es ist.

jedoch mit der Formel geht es noch nicht.

=WENN(A30="";"";((AUFRUNDEN((B$19-0,5)/0,8;0)+1)*(RECHTS(A30;4)/1000>=B$19)*(WENN(ZEILE()=30;1;RECHTS(0&A29;4)/1000
(AUFRUNDEN((D$19-0,5)/0,5;0)+1)*(RECHTS(A30;4)/1000>=D$19)*(WENN(ZEILE()=30;1;RECHTS(0&A29;4)/1000
die beiden rot markierten "29" machen mir Probleme, sobald in Zeile 29 etwas eingefügt wird kommt "#WERT!"

Also müßte dieser Teil der Formel geändert werden.
:16: :19:
Antworten Top
#48
Hallo zusammen,
Das Problem ist gelöst
Nochmals Danke an Hella und den Rest der Excelkammer  :18: :18: :19:

Schließe den Fall noch nicht ab denn ich bin noch nicht ganz fertig

:16:
Antworten Top
#49
Hallo nochmal,
Das Dankeschön muss ich noch Mal richtig stellen.
Das kommt von der autokorektur sollte man ausschalten  Huh

Danke neopa und den Rest der excellianer  :18: :18: :18: :18: :18:

So sollte es heißen.
Antworten Top
#50
Hallo zusammen,
eine Frage zu VBA :

möchte folgendes erreichen.
wenn Ich meine Mappe geöffnet und die Angaben eingegeben habe sollen diese an einem bestimmten Ort gespeichert werden das habe Ich als VBA soweit zusammengesucht und erreicht



Code:
Sub Unterdecke ()
Dim strFilename As String
Const LW = "F:\"
Const Pfad = "F:\003_Trockenbau\"
ChDrive LW
ChDir Pfad
strFilename = getName(Pfad & Format(Date, "YYYY-MM-DD_") & Sheets("Unterdecke Noniusabhänger").Range("C14"), ".xlsm")
ActiveWorkbook.SaveAs strFilename, FileFormat:= _
        xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False


End Sub

Private Function getName(ByVal strName As String, ByVal strExtension As String) As String
   Dim lngNummer As Long
 
   If Dir(strName & strExtension) = "" Then
      getName = strName & strExtension
   Else
      lngNummer = 1
      While Dir(strName & "_" & Format(lngNummer, "000") & strExtension) <> ""
         lngNummer = lngNummer + 1
      Wend
      getName = strName & "_" & Format(lngNummer, "000") & strExtension
   End If
End Function


jetzt speichert es die Mappe , die offene Mappe ist jedoch die neue mit Eingaben.

Besteht eigentlich die Möglichkeit das man Range("C14"), ".xlsm") noch die Zelle C16 einbindet. ZB. in C14 steht Mayer und in C16 Wohnzimmer der Speichername sollte dann Mayer_Wohnzimmer.xlsm lauten.

Wie kann Ich mit einer 2 VBA erreichen das er mir alle Werte wieder auf null setzt und oder wieder die Original Mappe als leere Mappe öffnet.

Habe mit dem Makrorecorder was aufgezeichent, dabei bleibt aber der Speichername der  zuvor gespeicherten Mappe bestehen.

NAJA ist halt nicht so einfach

:22:
Antworten Top


Gehe zu:


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