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.

PLZ: 5 andere mit kleinster Entfernung
#11
Hallo snb,

ja, dieser Code funktioniert.

Die Laufzeit ist allerdings größer als in der Version mit Worksheet-Function. Die vermutliche Begründung ist, dass Excel alle Kerne nutzt, aber vorallem, dass die M$ - Programmierer mit C++ in einer xll (dll für Excel) sehr hardwarenah arbeiten.

mfg
Antworten Top
#12
Mirscheint die VBA.DLL das noch etwas genauer zu tun.

Könntest du mal testen ?

Code:
Sub M_snb()
  sn = Cells(1).CurrentRegion
 
  j = [match(10245,A1:A8901)]
  sq = Cells(1).CurrentRegion.Columns(j)
 
  For jj = 2 To 10
      y = Application.Small(sq, jj)
      For jjj = 1 To UBound(sn, 2)
        If sn(j, jjj) = y Then Exit For
      Next
      Debug.Print "row: " & j & vbTab & "value: " & y & vbTab & "column: " & jjj & vbTab & "columnhead: " & sn(1, jjj)
  Next
End Sub
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top
#13
Hallo snb,

der Code läuft. Die meiste Zeit wird aber für die Übertragung der Zellen in das Array benötugt. Danach ist die Berechnung extrem schnell.

Code:
nach sn        8,039063

Ende           8,054688

mfg

Matrix 8.900 x 8.900
Antworten Top


Gehe zu:


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