Thema Datum  Von Nutzer Rating
Antwort
16.10.2020 19:56:52 Karl
NotSolved
16.10.2020 20:35:49 Gast43049
Solved
16.10.2020 21:01:07 Karl
NotSolved
Blau Probleme bei 3 Formeln
17.10.2020 03:05:03 Gast85228
NotSolved
17.10.2020 03:19:31 Gast85228
NotSolved
17.10.2020 07:29:42 Mase
NotSolved
19.10.2020 15:46:35 Karl
Solved
16.10.2020 21:10:42 Mase
NotSolved

Ansicht des Beitrags:
Von:
Gast85228
Datum:
17.10.2020 03:05:03
Views:
507
Rating: Antwort:
  Ja
Thema:
Probleme bei 3 Formeln

Ich verwende immer andere Bezeichnungen da ich die Formeln öfters benötige und daher doppelte Bezeichnungen habe was zu einer Fehlermeldung führt.

Wie meinst du das, "öfters benötigt und daher doppelte Bezeichnungen"?

Du kannst Variablen öfters verwenden.

Sub Test()
  Dim i As Long
  For i = 1 To 100
    'mach etwas
  Next
  For i = 1 To 34
    'mach etwas anderes
  Next
  For i = -100 To -1
    'mach etwas "negatives"
  Next
End Sub

Außerdem ist die Variable i wie auch jede andere, in der Prozedur deklarierte (Dim) Variable, nur in dieser Prozedur (Test) bekannt.

In jeder anderen Prozedur kanns du i erneut definieren und verwenden.


Es zeigt keinen Fehler beim Starten aber das Excel hängt sich leider auf. Evtl. zu viel verlangt?

Beim Programmieren muss man sich immer auch darum Gedanken machen was man da eigentlich genau treibt.

Diese Schleifen hier

  For i = 4 To 3951
    For SpalteWks1 = wks1.Columns("DTY").Column To wks1.Columns("FXH").Column '3249 to 4688
      For SpalteWks2 = wks2.Columns("F").Column To wks2.Columns("BCO").Column '   6 to 1445

heißt im Endeffekt (3951-4) * (4688-3249) * (1445-6) = 8.173.135.787? Aktionen. natürlich braucht der Rechner dafür ne ganze weile Zeit. ;-)

Wenn man sich das dann überlegt hat, sollte man Gedanken darüber machen, ob es vielleicht Möglichkeiten zur Optimierung gibt.

Aber zumindest sollte man verstehen, dass es dauern kann, und das man der Sache Zeit geben muss.

In diesem Fall wäre der erste und einfachste Gedanke:

  For i = 4 To 3951
    For SpalteWks1 = wks1.Columns("DTY").Column To wks1.Columns("FXH").Column
      For SpalteWks2 = wks2.Columns("F").Column To wks2.Columns("BCO").Column
        '...
      Next
    Next
    DoEvents 'dem Betriebssystem Zeit zum "Denken" geben, bevor es hier mit VBA/Excel weitergeht
  Next

Dann scheint es auch nicht mehr so, als ob Excel sich aufgehängt hat / nicht mehr reagiert.


Die Formel besteht daraus, ich verplane im Sheet1 für meine Arbeit "Farbcodes", welche dann im Sheet 2 erscheinen sollen in den Zellen.

DTY bis FXH 4 bis 3951 ist sozusagen 1:1 F bis BCO 4 bis 3951


Verstehe leider nicht genau was du damit meinst.


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
16.10.2020 19:56:52 Karl
NotSolved
16.10.2020 20:35:49 Gast43049
Solved
16.10.2020 21:01:07 Karl
NotSolved
Blau Probleme bei 3 Formeln
17.10.2020 03:05:03 Gast85228
NotSolved
17.10.2020 03:19:31 Gast85228
NotSolved
17.10.2020 07:29:42 Mase
NotSolved
19.10.2020 15:46:35 Karl
Solved
16.10.2020 21:10:42 Mase
NotSolved