Thema Datum  Von Nutzer Rating
Antwort
Rot Koordinaten eines Rasters berechnen
01.07.2013 11:30:22 ellzzett
NotSolved
01.07.2013 16:35:32 Holger
NotSolved

Ansicht des Beitrags:
Von:
ellzzett
Datum:
01.07.2013 11:30:22
Views:
1239
Rating: Antwort:
  Ja
Thema:
Koordinaten eines Rasters berechnen

Hallo,

ich bin ein relativer Newbie was VBA Programmierung an geht und bin auf der Suche nach einer Lösung für folgendes Problem.

Ich möchte ein Raster in einer Excel-Tabelle ausgeben was aus einer definierten Punktzahl besteht, die jeweils über eine X und Y Koordinate beschrieben werden.

Das Raster soll auf einem Feld von 65536 x 65536 Punkten erstellt werden. Ziel ist es also das Raster auf diesem Feld mit der definierten Punkteanzahl (max. 1000) abzubilden. Programmablauf wäre folgender:

 

1.     Abfrage nach der Punktzahl, Variable „Punkte_ges“ wird gesetzt

2.     Berechnung der möglichen Punkte in X- und Y-Richtung über „Punkte_ = Sqr (Punkte_ges) – 1“

        z.B.: Will ich einer Raster aus 9 Punkten (Punkte_ges = 9) generieren so habe ich in X und Y Richtung 3 Reihen ((Wurzel aus 9 )-1)

3.     Da ich jetzt die Anzal der Reihen/Spalten kenne, kann ich über die Feldbreite das Delta zwischen den einzelnen Punkten berechnen

z.B.: 65536 / 3 -1 = 32768 aller 32768 Punkte eine Rasterpunkt

Jetzt habe ich Excel soweit, dass er mir die Korrekten Koordinaten bei y = 0 ausgibt. Diese aber auf die restlichen Punkte (Y+Delta) abzubilden fällt mir schwer.

Es müssen quasi alle möglichen X/Y Koordinaten über die Variablen abgebildet werden ohne dass sich diese doppeln. Ich bin für jegliche Gedankenstützen dankbar.

Mein Programm sieht aktuell so aus:

Sub Raster_n()

'___Raster aus beliebigen Punkten generieren

    Dim Punkte_ges  As Integer

    Dim Punkte_     As Single

    Dim Delta       As Single

    Dim x_neu       As Single

    Dim y_neu       As Single

       

    Punkte_ges = InputBox("Aus wievielen Punkten soll das Raster generiert werden?", "Punkteanzahl")

        Punkte_ = Sqr(Punkte_ges) - 1

        Punkte_1 = Punkte_

        Delta = 65536 / Punkte_

        Range("H4").Select

       

                Do Until Punkte_ < 1

                    Punkte_ = Punkte_ - 1

                    x_neu = x_neu + Delta

                    ActiveCell.Value = x_neu

                    ActiveCell.Offset(0, 1).Select

                    ActiveCell.Value = 0

                    ActiveCell.Offset(1, -1).Select

                Loop

End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:

 
 

  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Koordinaten eines Rasters berechnen
01.07.2013 11:30:22 ellzzett
NotSolved
01.07.2013 16:35:32 Holger
NotSolved