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.

Formen nicht über einen Bereich / Zeile ziehen
#1
Hallo zusammen,

es geht um ein Projekt wo ich leider nichtmehr weiter weis.
Ich hoffe ihr könnt mir helfen bzw versteht mein Problem.
Es geht um folgendes:
Ich habe einen Ladeplan erstellt mit Makros der verschiedenen Paletten.
Wenn ich nun auf das Makro klicke erscheint die Palette in meinem Laderaum,
nun mein Problem.
Ich möchte nicht das die eingefügte Palette über den Laderaum herauszuziehen geht,
das quasi die Linie des Laderaums ( Rot Markiert ) wie eine Wand ist.
Ich hoffe ihr versteht mein Problem :)
Würde mich über Hilfe sehr freuen da ich schon wirklich sehr lange an diesem Problem hänge.

   

Danke
Antworten Top
#2
Hallo k...,

die genaue Lösung ist natürlich abhängig von deiner Programmierung der Paletten (P).

Hier eine Vorgehensweise:

1. Die Grenzen des Wagens (W) und des Anhängers (A) müssen bekannt sein. Entweder als Form oder als Zelle.
2. Es muss bekannt sein, ob die Palette dem Wagen oder dem Anhänger zugeordnet ist.
3. Anpassungen:
a) Left(P) = Max(Left(P),Left(W)
b) Top(P) =Max(Top(P),Top(W)
c) Left(P) = Min(Left(P),Left(W)+Width(W)-Width(P))
d) Top(P) = Min(Top(P),Top(W)+Hight(W)-Wight(P))
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Antworten Top
#3
Wow das ging ja richtig schnell :)
Leider verstehe ich nicht was genau du mir sagen willst :(
Also den MW ( Machinenwagen )  habe ich als Form genauso den Anhänger.
Bin kein Profi in Excel deswegen tu ich mir auch etwas schwer mit deiner Antwort. Sorry.
Hoffe du kannst mir es trotzdem genau erklären wie ich vorgehen muss bzw was ich zutun habe.

Danke
Antworten Top
#4
Hallo k...,

Wenn du für den Maschinenwagen eine Form hast, dann hast du in VBA sowohl für den Maschinenwagen (W) als auch für die Palette(P) ein Shape-Objekt. Shape-Objekte haben unter andern die Eigenschaften .Top, .Left, .Hight und .Width.

a) wenn du nur prüfen willst, ob die Pallette über den linken Wagenrand hinausragt, geht diese Abfrage:
If W.Left > P.Left Then
   Fehlermeldung
End If

b) wenn du die Palette direkt einpassen möchtest geht dieser code:
P.Left = Max(P.Left, W.Left)
Natürlich müssen auch die Zellen angepasst werden, mit der du die Position der Paletten-Form ermittelt hast.
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Antworten Top
#5
Hallo,

danke für die erneute schnelle Antwort.
(a) brauche ich eig nicht, also ich will nicht Prüfen ob es hinausragt.

Ich möchte ja genau dies verhindern. Eben das ich meine Palette nicht über die Linie ziehen kann, sondern gegen die Linie stoßt wie eine Wand.

Aber im VB sehe ich doch nicht die Form des MW bzw Anhängers oder? Dort sehe ich doch nur meine ganzen Makros?
Der MW und Anhänger bleiben ja immer gleich, da habe ich kein Makro.
Vll fällt dir ja auch etwas völlig anderes ein wie ich es machen könnte, der MW und Anhänger müssen ja nicht unbedingt eine Form sein.
Ich kann auch die Zellen mit Dicken Rand machen, sieht genauso aus. Hauptsache ich kann meine Paletten nicht über den Laderaum hinaus verschieben.

Danke
Antworten Top
#6
Hallo k...,

zu:
Zitat:Aber im VB sehe ich doch nicht die Form des MW bzw Anhängers oder? Dort sehe ich doch nur meine ganzen Makros?

Huh Huh Huh

Wer hat denn die bisherigen Makros geschrieben? Vielleicht kenn er ja die Makros nach meinem Vorschlag anpassen. Ich kann ja nicht in deine Datei schauen.

Und nach deinen Fragen glaube ich nicht, dass wir über reine Beschreibung der notwendigen Aktionen ein gemeinsames Verständnis finden.
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Antworten Top
#7
Hallo,
 Ich habe die Makros geschrieben xD ja wie gesagt ich bin wirklich kein Profi in Excel. Würde es dir etwas bringen wenn ich dir die arbeitsmappe mal schicken würde oder man sich über einen Messenger unterhält ? MfG
Antworten Top
#8
Hallo k...,

Eine Arbeitsmappe ist natürlich hilfreich. Es wäre auch schön, wenn du die vorhandenen Makros ein wenig beschreibst.

Aber bitte nur hier im Forum.



Was nicht geht ist das ziehen über die Grenzen zu verhindern.
Man könnte eine Palette aber, falls sie über die Grenze gezogen wurde, auf die Grenzen des Wagens oder Anhängers zurücksetzen.

Wenn du eine Palette dann genau an den Linken oberen Rand positionieren möchtest, müstest du sie über die linke obere Ecke positionieren und die Anpassung anstossen.
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Antworten Top
#9
Guten Morgen,
ja das würde mir vollkommen reichen.
Wenn du mal in die Mappe schauen könntest wäre das wirklich verdammt nett :)

Danke für deine Hilfe


Angehängte Dateien
.xlsm   LADERAUM PLANER.xlsm (Größe: 103,74 KB / Downloads: 5)
Antworten Top
#10
Hallo klkc,

hilfreich ist es schon, während des Verschiebens oder bei Größenänderungen eines Grafikobjektes die Alt-Taste zu drücken. Dadurch wird eine Einrastfunktion aktiviert.

Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • Igelbauer
Antworten Top


Gehe zu:


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