Tabelle bzw Raster mit Schleife erstellen
#11
Hallöchen,

was soll denn eigentlich eingetragen werden, wenn die Rechnung nicht auf geht? Nimm mal 2100 als Endwert.

Dann wäre der erste Wert 40, dann 1040, 2040 und dann 2060?
Die andere Variante wäre - entsprechend dem 610er Beispiel, 40, 60, 1060 und 2060. Allerdings wüsste ich hier mit der 120 nix anzufangen Sad
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#12
Hallo Wolfgang,

1. Wenn mehrere Personen geantwortet haben, kennzeichne bitte durch eine Anrede, auf welche Antwort du dich beziehst.

2. Wenn deine letzte Antwort mir galt, einfach in den vier Aufrufen des Offset die "- 1" entfernen und eventuell die Zeile "rngRaster = 0" einfügen.

3. Wenn du das Blatt kopierst, hast du, wie in deinem ersten Beispiel, ein zweites Raster mit anderen Parametern aber nur einmal die Funktion.


Angehängte Dateien
.xlsm   Raster.xlsm (Größe: 28,37 KB / Downloads: 3)
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.





Top
#13
Hallo Ego

Danke für deine Belehrung, hatte ich ganz vergessen

Natürlich sollte man immer einen Ansprechpartner angeben, sonst weiß ja niemand von oder mit wem man spricht.

Habe mir deinen zweiten Vorschlag angesehen und bin sehr erfreut, das du mir damit geholfen hast.

Gruß  Wolfgang
Top
#14
Hallo Ego

Kannst du mir vielleicht noch einmal helfen.
Wie bekomme ich bei deinem Vorschlag, das sehr gut ist,
automatisch um jede Zelle im Raster einen Rahmen.
Habe es mit meinem Macro (Anfangs Datei) bzw Bedingter Formatierung versucht,
jedoch "Fehlanzeige"
Gruß Wolfgang
Top
#15
Hallo Wolfgang,

bitte sehr (Anlage).

Ich habe das Leeren der alten Matrix aus dem Ereignismodul in die Routine "Raster" verschoben.


Angehängte Dateien
.xlsm   Raster.xlsm (Größe: 31,79 KB / Downloads: 8)
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.





Top
#16
Hallo Helmut (Ego)

Dein letzter Beitrag zu meinem Anliegen ist sehr gut.
Hab ihn für meine Zwecke (mit Abfrage bzw. InputBox) umgearbeitet.
Das Makro ist kleiner als meins von dem 610er Raster.
Habe versucht deins umzuschreiben auf das 610er, aber meine Kenntnisse sind bescheiden.
Kannst du mir vielleicht nochmal helfen.
D.h.: am Anfang und Ende werden jeweils der Schritt 30 und dann 120 abgezogen;
dann schrittweise 610 und die drittletzte wäre der Rest (Breite oder Länge)
Hatte zwar gestern eine Mail gesendet
Doch ich kenn mich nicht so aus, ob die auch angekommen ist
Gruß
Wolfgang
Top
#17
Hallo Wolfgang,

A) 610 Raster
Meine Datei war so aufgebaut, dass die notwendigen Parameter in den benannten Zellen eingetragen wurden und bei einer Kopie des Arbeitsblattes in jedem Arbeitsblatt unterschiedliche Parameter genutzt werden können.
Für das 610er Raster must du nur den Schritt auf 610 und Aussen auf 30 setzen.

B) modulare Programmierung
Falls dir die Eingabe der Parameter über Einträge in Zellen nicht gefällt, darfst/solltest/brauchst du trotzdem den Code des Programms "Raster" nicht anpassen. Du kannst die Parameter in einem anderen Makro erfassen und aus diesem das Programm "Raster" mit den notwendigen Parametern aufrufen. Dann kannst du für verschiedene Raster den gleiche Code verwenden (modulare Programmierung).

c) Verfahren
1. Das Programm setzt den Start auf 0
2. Es ermittelt in "lngAnzL" die Anzahl der notwendigen Einträge in Längsrichtung
3. In einer Schleife setzt es den ersten Wert auf "Aussen" erhöht den Wert jedesmall um "Schritt" und setzt den letzten Wert auf "Länge"-"Aussen"
4. Die Schritte 2. und 3. werden ebenfalls für die Breite durchlaufen.

Durch die Berechnung der Anzahl der Einträge ist eine Berechnung eines Restes nicht notwendig.
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.





Top
#18
Hallo Helmut

Danke für deine Antwort.


Hab mich wohl mal wieder falsch ausgedrückt.

Was du mir beschrieben hast klappt ja wunderbar.

Jedoch wollte ich Jeweils am Anfang und Ende 2 Verschiedene Schritte haben (610er Raster)

Einmal 30 und dann 120 dann Schritte 610

z.B.:  Länge 3000  das wäre dann folgender massen (30,150,760,1370,1980,2590,2850,2970)

Gruß Wolfgang
Top
#19
Hallo Wolfgang,

in der Anlage eine Programmversion mit zwei möglichen Aussenbereichen. Wenn der zweite Wert 0 ist, arbeitet es wie das alte Programm.

Ich habe noch zwei Fragen:
1. Wenn du Wert auf die 0 gelegt hast, warum nicht dann auch die Ausgabe der Länge am anderen Ende der Liste?
2. Warum ist die Differenzmenge rechts und nicht in der Mitte?


Angehängte Dateien
.xlsm   Raster.xlsm (Größe: 26,64 KB / Downloads: 5)
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.





Top
#20
Hallo Helmut

Danke für deine Hilfe

Zu deinen Fragen

Ich benötige diese Raster bei Vermessungsarbeiten

Natürlich wäre es manchmal Ratsam die beiden Endpunkte Links und Rechts auf "0" zu legen und den Rest in die Mitte

Hab das schon mal gemacht, jedoch mit Formeln, ziemlich umständlich (Nichtleere Zellen am Ende auswählen und Formel Länge bzw. Breite  minus ...)

Wenn das auch mit deinem Code machbar wäre.

Danke für deine Hilfe

Gruß Wolfgang
Top


Gehe zu:


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