Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  AutoCAD VBA
  Frage zu Redim

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
  
Von Digital Twins bis Hochleistungs-Computing: PNY präsentiert seine Zukunftstechnologien für die Industrie von morgen, eine Pressemitteilung
Autor Thema:  Frage zu Redim (812 mal gelesen)
Pelikan
Mitglied
Dipl. Ing. Masch. Bau.


Sehen Sie sich das Profil von Pelikan an!   Senden Sie eine Private Message an Pelikan  Schreiben Sie einen Gästebucheintrag für Pelikan

Beiträge: 261
Registriert: 30.12.2002

erstellt am: 14. Dez. 2004 14:52    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,
ich hab mal eine Frage zu redim...

ich habe ein Feld:

Dim feld() As Double

und möchte das Feld in einer Schleife neu definieren:
Also

ReDim Preserve feld(i, 2)

wobei i die Laufvariable ist.
Beim ersten Schleifendurchlauf funktioniert das ganze auch, aber beim zweiten durchlauf tut sich nix mehr am Feld...
hat jemand eine Idee ?

Gruss Pelikan

[Diese Nachricht wurde von Pelikan am 14. Dez. 2004 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

startrek
Moderator
Architekt


Sehen Sie sich das Profil von startrek an!   Senden Sie eine Private Message an startrek  Schreiben Sie einen Gästebucheintrag für startrek

Beiträge: 1361
Registriert: 13.02.2003

.

erstellt am: 14. Dez. 2004 15:06    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Pelikan 10 Unities + Antwort hilfreich

Schau mal in die Hilfe zu Preserve. Das geht nur bei der letzten Dimension eines Feldes, also wenn es sinngemäß hiesse
redim preserve feld(2, 3, i).
feld(2, i, 3) geht nicht, genausowenig wie feld(i, 2), alles klar? ;-)

Gruss Nancy

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Pelikan
Mitglied
Dipl. Ing. Masch. Bau.


Sehen Sie sich das Profil von Pelikan an!   Senden Sie eine Private Message an Pelikan  Schreiben Sie einen Gästebucheintrag für Pelikan

Beiträge: 261
Registriert: 30.12.2002

erstellt am: 14. Dez. 2004 15:12    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke für die Antwort,
ist halt etwas ärgerlich... ich muss Punkte einlesen weis aber noch nicht genau wieviele das werden.
dann werd ich das Feld mal anders herum aufbauen...

Gruss Pelikan

PS: Ausszug aus der Hilfe
Anmerkung  Wenn Sie das Schlüsselwort Preserve mit einem dynamischen Datenfeld verwenden, können Sie nur die obere Grenze der letzten Dimension, aber nicht die Anzahl der Dimensionen ändern.

hab nicht weit genug gescrollt 

[Diese Nachricht wurde von Pelikan am 14. Dez. 2004 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

fuchsi
Mitglied
Programmierer c#.net Datawarehouse


Sehen Sie sich das Profil von fuchsi an!   Senden Sie eine Private Message an fuchsi  Schreiben Sie einen Gästebucheintrag für fuchsi

Beiträge: 1201
Registriert: 14.10.2003

AutoCad Version 2012 deu/enu
<P>Windows 7 64bit

erstellt am: 14. Dez. 2004 15:18    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Pelikan 10 Unities + Antwort hilfreich

wenn du Punkte sammelst, würde ich das eher so machen

Private Type Punkt
    x As Integer
    y As Integer
    z As Integer
End Type


Sub test()

    Dim p1 As Punkt
    Dim Punkte() As Punkt
   
   
    For i = 1 To 15
   
        p1.x = i
        p1.y = i
        p1.z = i
       
        ReDim Preserve Punkte(i)
        Punkte(i) = p1
   
    Next

End Sub


natürlich statt meiner For Next schleife, hast du halt die schleife über deine Punkte (nur zum Testen)

------------------
WWW.FFZELL.AT.TC

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

fuchsi
Mitglied
Programmierer c#.net Datawarehouse


Sehen Sie sich das Profil von fuchsi an!   Senden Sie eine Private Message an fuchsi  Schreiben Sie einen Gästebucheintrag für fuchsi

Beiträge: 1201
Registriert: 14.10.2003

AutoCad Version 2012 deu/enu
<P>Windows 7 64bit

erstellt am: 14. Dez. 2004 15:20    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Pelikan 10 Unities + Antwort hilfreich


Punkte.jpg

 
ansprechen kannst du dann deine Punkte mit z.B.:

Punkte(4).x
Punkte(4).y
Punkte(4).z

siehe ANhang

------------------
WWW.FFZELL.AT.TC

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Pelikan
Mitglied
Dipl. Ing. Masch. Bau.


Sehen Sie sich das Profil von Pelikan an!   Senden Sie eine Private Message an Pelikan  Schreiben Sie einen Gästebucheintrag für Pelikan

Beiträge: 261
Registriert: 30.12.2002

erstellt am: 14. Dez. 2004 15:34    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke für die Antwort !! das mit dem eigenen Typ ist denke ich die beste Lösung...
Hätte ich ja auch selber drauf kommen können 

10U's for you !

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Pelikan
Mitglied
Dipl. Ing. Masch. Bau.


Sehen Sie sich das Profil von Pelikan an!   Senden Sie eine Private Message an Pelikan  Schreiben Sie einen Gästebucheintrag für Pelikan

Beiträge: 261
Registriert: 30.12.2002

Inv 2013/2014 FDS
Win7 64bit
PSP2011
FX3000m HP 8770w 32GB

erstellt am: 14. Dez. 2004 17:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


fehler.jpg

 
Hm das mit den eigenen Datentypen klappt...
Aber das Problem ist das ich ein Feld mit Punkten zrückgeben möchte...

Also die aufrufende Prozedure soll als Rückgabewert eine Feld vom Typ Punkt bekommen... Das klappt aber nicht 

Fehler siehe Anhang.

Danke für jeden Hinweis...

Gruss Pelikan

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP



Anzeige:Infos zum Werbeplatz >>

cseTools Kanalbestandserfassung CAD APP für GIS, Vermessung und Kartografie, Tiefbau, AEC - Architektur-, Ingenieur- und Bauwesen

Mit cseTools Kanalbestandserfassung lässt sich aus reinen Vermessungsdaten (Vermessungspunkten) ein kanal-/fachspezifischer Datenbestand mit erforderlichen Sachdaten zu Kanalnetzen erstellen. Dieses Kanalnetz kann dann auf Knopfdruck als ISYBAU-XML oder DWA-M 150 Datei weitergegeben werden.

RoSiNiNo
Mitglied
Konstrukteur


Sehen Sie sich das Profil von RoSiNiNo an!   Senden Sie eine Private Message an RoSiNiNo  Schreiben Sie einen Gästebucheintrag für RoSiNiNo

Beiträge: 1126
Registriert: 09.10.2002

Acad 2011-deutsch, Express Tools
3ds Max 2010
Win 7-Professional
HP Workstation Z400, 6GB
GeForce GTX 470

erstellt am: 15. Dez. 2004 10:08    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Pelikan 10 Unities + Antwort hilfreich

Du definierst den Typ als private, daher kannst du ihn nur in diesem Modul verwenden. Ändere ihn in public und du hast das Problem behoben.

------------------
Roland

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2025 CAD.de | Impressum | Datenschutz