Thema Datum  Von Nutzer Rating
Antwort
11.09.2021 08:46:16 Stephan
NotSolved
11.09.2021 09:39:54 Gast92223
NotSolved
11.09.2021 10:43:32 Stephan
NotSolved
11.09.2021 13:28:27 xlKing
NotSolved
11.09.2021 17:20:10 Stephan
NotSolved
11.09.2021 18:14:09 xlKing
NotSolved
11.09.2021 18:54:39 Stephan
NotSolved
11.09.2021 19:42:40 xlKing
NotSolved
11.09.2021 21:02:08 Stephan
NotSolved
11.09.2021 22:26:30 xlKing
*****
NotSolved
12.09.2021 09:19:03 Stephan
NotSolved
13.09.2021 17:06:36 Stephan
NotSolved
Rot Werte in Bestimmte Bereiche kopieren nach Bedinung
14.09.2021 18:12:43 xlKing
NotSolved
14.09.2021 19:06:13 xlKing
NotSolved
14.09.2021 19:28:36 xlKing
NotSolved
14.09.2021 22:23:27 Stephan
NotSolved
15.09.2021 00:56:58 xlKing
NotSolved
18.09.2021 17:43:35 Stephan
NotSolved
18.09.2021 22:10:30 xlKing
*****
NotSolved
19.09.2021 14:28:22 Stephan
NotSolved
11.09.2021 16:57:11 Mase
NotSolved

Ansicht des Beitrags:
Von:
xlKing
Datum:
14.09.2021 18:12:43
Views:
499
Rating: Antwort:
  Ja
Thema:
Werte in Bestimmte Bereiche kopieren nach Bedinung

Hi Stephan,

du bist auch mit nix zufrieden oder? wink Das ist auch gut so. Denn ein Makro ist etwas, das nie fertig wird. Geht mir auch immer so, dass man hier und da noch was sieht, was man noch einbauen könnte. Das Problem dabei: Irgendwann will man was einbauen, womit man den ganzen bisherigen Code komplett umschreiben muss. Deshalb muss man entweder sagen, jetzt ist Schluss, oder halt in den sauren Apfel beißen. Aus diesem Grund ist es grundsätzlich immer besser, sich vorher ein Konzept zurechtzulegen, was man mit dem Code überhaupt erreichen will. Das ist jezt hier schon die vierte Zusatzfrage. Wenn du das nächste Mal eine Frage in einem Forum stellst, solltest du also bitte gleich alle Karten auf den Tisch legen und sagen was du willst, sonst könntest du deine Helfer schnell vergrätzen.

Zu deiner Frage: Ja das ist auch möglich. Dafür benötigst du aber einen zuvor fest definierten Bereich. Wenn ich dich richtig verstehe ist der Zielbereich für y also L9:R9 und L11:R11. Irgendwo dort in diesen Zellen willst du die 6 Ypsilon-Werte zufällig reinkopieren, korrekt?

Zunächst musst du den Zufallsgenerator initiieren. Das macht man zumeist mit dem Befehl Randomize Timer. Dann musst du die Zufallszahl berechnen. Das wird mit Int(rnd * (Max - Min + 1)) + Min gemacht. Was du  mit dieser Zufallszahl anstellst bleibt dir überlassen. Du kannst so z.B. zeile und Spalte in deinem Zielbereich berechnen oder die Position der Zelle im Zielbereich. Hier mal ein Beispiel für Zeile und Spalte:

Sub CommandButton2_Click()
  Dim z1 As Long, z2 As Long, s2 As Long
  
  Randomize Timer
  
  Set Quelle = Sheets("FCLM_Data")
  Set ziel = Sheets("Board")
  
  z2 = 9: s2 = 3: z3 = 9: s3 = 12: z4 = 13: s4 = 12
  Set ZielbereichY = ziel.Range("L9:Q9")
  
  For z1 = 1 To Quelle.Cells(Rows.Count, 1).End(xlUp).Row
    If s2 > 10 Then
      s2 = 3
      z2 = z2 + 2
    End If
    
    If s4 > 18 Then
      s4 = 12
      z4 = z4 + 2
    End If
     
    If Quelle.Cells(z1, 1) <> "" Then
      If Quelle.Cells(z1, 13) = "y" And y < 6 Then
         Do
         s3 = Int(Rnd * (18 - 12 + 1)) + 12
         z3 = Int(Rnd * (11 - 9 + 1)) + 9
         Loop Until z3 <> 10 And ziel.Cells(z3, s3) = ""
         ziel.Cells(z3, s3) = Quelle.Cells(z1, 1)
         y = y + 1
      ElseIf Quelle.Cells(z1, 13) = "p" And p < 2 Then
        ziel.Cells(z4, s4) = Quelle.Cells(z1, 1)
        s4 = s4 + 1
        p = p + 1
      Else
        ziel.Cells(z2, s2) = Quelle.Cells(z1, 1)
        s2 = s2 + 1
      End If
    End If
  Next z1
End Sub

Achtung: Ich habe hier Do Loop verwendet um wirklich nur die gewünschten Zellen anzusprechen. Das kann bei Unachtsamkeit schnell zu einer Dauerschleife führen. Vor dem erneuten Ausführen, solltest du die Daten im Zielblatt also löschen. z.B. mit Ziel.Cells.ClearContents. Sonst stürzt womöglich dein Excel ab.

Gruß Mr. K.


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
11.09.2021 08:46:16 Stephan
NotSolved
11.09.2021 09:39:54 Gast92223
NotSolved
11.09.2021 10:43:32 Stephan
NotSolved
11.09.2021 13:28:27 xlKing
NotSolved
11.09.2021 17:20:10 Stephan
NotSolved
11.09.2021 18:14:09 xlKing
NotSolved
11.09.2021 18:54:39 Stephan
NotSolved
11.09.2021 19:42:40 xlKing
NotSolved
11.09.2021 21:02:08 Stephan
NotSolved
11.09.2021 22:26:30 xlKing
*****
NotSolved
12.09.2021 09:19:03 Stephan
NotSolved
13.09.2021 17:06:36 Stephan
NotSolved
Rot Werte in Bestimmte Bereiche kopieren nach Bedinung
14.09.2021 18:12:43 xlKing
NotSolved
14.09.2021 19:06:13 xlKing
NotSolved
14.09.2021 19:28:36 xlKing
NotSolved
14.09.2021 22:23:27 Stephan
NotSolved
15.09.2021 00:56:58 xlKing
NotSolved
18.09.2021 17:43:35 Stephan
NotSolved
18.09.2021 22:10:30 xlKing
*****
NotSolved
19.09.2021 14:28:22 Stephan
NotSolved
11.09.2021 16:57:11 Mase
NotSolved