Thema Datum  Von Nutzer Rating
Antwort
Rot Felder beschreiben und auslesen VBA/ Excel
18.07.2015 12:27:48 Simba
NotSolved
18.07.2015 14:58:49 Gast94581
NotSolved
19.07.2015 12:27:13 Simba
NotSolved
19.07.2015 13:17:48 Gast62595
NotSolved

Ansicht des Beitrags:
Von:
Simba
Datum:
18.07.2015 12:27:48
Views:
1298
Rating: Antwort:
  Ja
Thema:
Felder beschreiben und auslesen VBA/ Excel

Hallo liebe Forumsgemeinschaft,

ich bin letztens auf eine (für mich) knifflige Aufgabe gestoßen.

Mein Ziel ist es ein ein Datenfeld zusammenhängende Ranges einzulesen und am Schluss auf einmal in ein Excelblatt zu schreiben. Nun die Besonderheit daran ist, dass das Befüllen nicht über einzelne Zellen geschehen darf, sondern pro Schleifendurchlauf eine ganze Range einlesen muss. Die Ausgabe muss auf einmal funktionieren. Aufgrund des gewaltigen Rechenaufwands dauert eine Berechnun mit Doppelschleifen einige Stunden und ist somit nicht mehr tragbar. Das bestehende Programm kann auch nicht umgeschrieben werden und muss weiterhin in Excel erfolgen.

 

Soviel zum Hintergrund. Das technische Problem für mich ist folgendes:

Es wird eine Schleife durchgegangen, welche den Index des Datenfelds erhöht und in der das Datenfeld dann die Zeile einlesen soll. Leider ist es immer die selbe Range (die Koordinaten werden also nicht verändert). Pro Schleifendurchgang ändern sich nur die Werte in der Range.

Folgendes Vorgehen lässt mich das Datenfeld am Ende nicht aufeinmal auslesen (was unbedingt erforderlich ist), obwohl bei Zugriff auf die einzelnen Koordinaten alle richtig befüllt sind:

 

sub test

dim Matrix(), i%

redim Matrix(1 to 6, 1 to 3)

for i = 1 to 6

Matrix(i, 1)= Range("A1: C1")

'die Werte in der Range verändern sich im Tabellenblatt

next i

Sheets("Ergebnis").Range("A1:C6")=Matrix()
'geht nicht

Sheets("Ergebnis").Range("A1:C6")=Matrix(1,1)
'liefert hingegen die erste gespeicherte Range.... usw.


end sub

Bei Dimensionierung mit nicht dimensionierten Datenfeldern funktioniert hier dann zwar die Ausgabe auf einmal, allerdings kann ich beim befüllen nicht auf Koordinaten zugreifen, somit steht immer nur die letzte Range drinnen...

 

Ich hoffe jemand von euch kann mir einen Tipp hierzu geben!

Noch als kleine Info:

Wären die Ranges untereinander angeordnet bekomme ich alles so hin wie ich möchte, das ist aber leider nicht möglich...

 

Danke schonmal!

Liebe Grüße

 

Christoph


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 Felder beschreiben und auslesen VBA/ Excel
18.07.2015 12:27:48 Simba
NotSolved
18.07.2015 14:58:49 Gast94581
NotSolved
19.07.2015 12:27:13 Simba
NotSolved
19.07.2015 13:17:48 Gast62595
NotSolved