Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1340to1344
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Komplexe Datenübertragung in anderes Tabellenblatt

Komplexe Datenübertragung in anderes Tabellenblatt
07.12.2013 21:52:00
Howard

Hallo,
in "Tabelle1" werden sechs Zufallszahlen in den Zellen F27 bis K27 generiert.
Diese sollen nun auf das Tabellenblatt "Tabelle2" übertragen werden, und zwar
im Bereich A1:G7, was ein Kästchen auf einem Lottoschein darstellen soll.
Die sechs generierten Zahlen sollen nun in diesem Bereich durch ein x markiert
werden.
Beispiel: Die generierten Zahlen lauten 5 - 12 - 21 - 34 - 37 - 41
Dann müssen in folgenden Feldern ein x erscheinen: A5 - B5 - C7 - E6 - F2 und F6
Hat jemand eine Lösung für das Problem, oder bleibt nichts anderes übrig als für jede
Zelle in A1:G7 eine Excel-Formel anzuwenden?

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
also VBA ?
07.12.2013 22:08:47
Matthias
Hallo
Ist eine seltsame Anordnung eines Lottoscheines
Die gehen eigentlich von links nach rechts
Tabelle2

 ABCDEFG
11234567
2891011121314
315161718192021
422232425262728
529303132333435
636373839404142
743444546474849


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Ziat
in "Tabelle1" werden sechs Zufallszahlen in den Zellen F27 bis K27 generiert.
Wie generierst Du die Zufallszahlen?
Gruß Matthias

Anzeige
AW: also VBA ?
07.12.2013 22:53:53
Howard
Hallo Matthias,
Du hast doch das Lottokästchen so dargestellt wie es in Natura ist: von links nach rechts, Zeile
für Zeile, 1 bis 7, dann 8 bis 14 usw.
Die Zufallszahlen werden generiert durch =ZUFALLSBEREICH(1;49)
Gruß
Howard

VBA oder Formeln ?
08.12.2013 06:09:51
Matthias
Hallo
Zitat:

Du hast doch das Lottokästchen so dargestellt wie es in Natura ist: von links nach rechts, Zeile
für Zeile, 1 bis 7, dann 8 bis 14 usw
.
Ja eben (waagerech), aber wenn bei Dir bei
5 - 12 - 21 - 34 - 37 - 41
die Kreuze in ...
A5 - B5 - C7 - E6 - F2 und F6
... sein sollen, dann ist Deine Anordnung aber Sekrecht!
Tabelle2

 ABCDEFG
1181522293643
2291623303744
33101724313845
44111825323946
55121926334047
66132027344148
77142128354249


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Desweiteren birgt die Formel:
=ZUFALLSBEREICH(1;49)
das Risiko doppelte Zahlen zu generieren.
Wie man das verhindert kannst Du hier nachlesen:
http://www.excelformeln.de/formeln.html?welcher=152
Du hast noch keine Antwort gegeben ob Du es mit VBA machen willst.
Stehen in Deinem "Lottoschein" die Zahlen von 1-49 drin, oder sind es leere Zellen?
Ich würde das mit definierten Namen realisieren.
Für die 6 gezogenen Zufallszahlen z.B. Name:=Ziehung
Für den dargestellten Lottoschein z.B. Name:=Tippschein
Nu kann man mit einer Schleife prüfen, ob eine Zahl von Ziehung
mit einer Zahl aus Tippschein übereinstimmt.
Ist das der Fall, wird ein Kreuz gesetzt.
Gruß Matthias

Anzeige
AW: VBA oder Formeln ?
08.12.2013 08:56:12
Howard
Hallo Matthias,
mein Fehler. Hab Zeilen u. Spalte verwechselt. Die Zahlen sollen natürlich wie auf einem Lottoschein
erscheinen, also 5 = F1 und nicht A5 usw.
Es soll per Makro gemacht werden. In dem Bereich A1:G7 sollten ursprünglich nichts drin stehen,
aber mittlerweile glaue ich, daß es einfacher ist, wenn dort die Zahlen von 1 bis 49 stehen.
Gruß
Howard

AW: VBA oder Formeln ?
08.12.2013 10:40:15
Howard
Nachtrag:
Hab mal ein kleines Testmakro ausprobiert.
Sub Lottoschein() Dim a As Range For Each a In Range("A1:G7") Select Case a Case Is = 7, 12, 16, 34, 37, 48 a.Offset(0, 0) = "x" Case Else a.Offset(0, 0) = a.Offset(0, 0) End Select Next End Sub Das brauch ich nur noch ein wenig anzupassen, dann haut´s hin.
Jetzt ist nur noch ein kleines Problem mit der Formatierung.
Vor Ausführung des Makros stehen alle Zahlen 1 bis 49 in Arial 12.
Nachdem das Makro ausgeführt wird, sollen nun die x-Felder in Arial 14, alle anderen, in denen
die Zahlen stehen bleiben, sollen dagegen in Arial 10 erscheinen. Die X-Felder dazu fett.

Anzeige
AW: VBA oder Formeln ?
08.12.2013 11:23:52
hary
Moin Howard
Wat haelste davon?
Dim a As Range
Dim Bereich As Range
Set Bereich = Worksheets("Tabelle1").Range("A1:G7")
Bereich.Borders(xlDiagonalUp).LineStyle = xlNone
Bereich.Borders(xlDiagonalDown).LineStyle = xlNone
For Each a In Bereich
Select Case a
Case Is = 7, 12, 16, 34, 37, 48
With a.Borders(xlDiagonalDown)
.Weight = xlThick
End With
With a.Borders(xlDiagonalUp)
.Weight = xlThick
End With
End Select
Next

gruss hary

Lotto-Spielereien
08.12.2013 11:50:02
Matthias
Hallo zusammen
Da wird aber immer 7, 12, 16, 34, 37, 48 erwartet ;-)
Habs mal mit Deinem Code(hary), etwas modifiziert als Datei erstellt.
Hier zwar nur in einer Tabelle, aber eine Anpassung sollte nicht schwer fallen.
In der Tabelle habe ich mit definierten Namen gearbeitet!
https://www.herber.de/bbs/user/88426.xlsm
Gruß Matthias

Anzeige
AW: Lotto-Spielereien
08.12.2013 11:59:57
hary
Moin Matthias
Ich weiss es sind immer die gleichen Zahlen, aber Howard schrieb ja:
"Das brauch ich nur noch ein wenig anzupassen, dann haut´s hin."
gruss hary

hast doch das ;-) bemerkt
08.12.2013 12:07:26
Matthias
Hallo hary
war je eher für Howard gedacht,
deshalb war die Überschrift "Hallo zusammen"
Ich weiß doch das Du das auch weißt :-)
schö.Advent an Alle
Gruß Matthias

AW: VBA oder Formeln ?
08.12.2013 13:57:50
Howard
Hallo,
erstmals vielen Dank. Hab die Schriftstärke der Diagonalen auf x1Medium gesetzt, weil es so besser
aussieht. Hab dazu noch eine Frage: Gibt es unter VBA nur die drei Möglichkeiten Thick, Medium, Thin
oder gibt es eine Möglichkeit, die Stärke vielleicht in Pixel einzustellen. Kann VBA mit Arial 10
nichts anfangen?
Gruß
Howard

Anzeige
AW: VBA oder Formeln ?
08.12.2013 14:34:47
hary
Moin
Nee, Linienstaerke nur Thin/Medium/Thick.
Oder Linestyle aendern.
Wenn du den Inhalt groesser brauchst.
Dim a As Range
Dim Bereich As Range
nochmal:
Calculate
If Range("Control") > 1 Then GoTo nochmal
'Set Bereich = Worksheets("Tabelle1").Range("A1:G7")
Set Bereich = Range("A1:G7")
With Bereich
.Borders(xlDiagonalUp).LineStyle = xlNone
.Borders(xlDiagonalDown).LineStyle = xlNone
.Font.Name = "Arial"
.Font.Size = 12
End With
For Each a In Bereich
Select Case a
Case Is = Range("Ziehung")(1), Range("Ziehung")(2), Range("Ziehung")(3), Range("Ziehung")(4) _
, Range("Ziehung")(5), Range("Ziehung")(6)
With a
.Font.Name = "Arial"
.Font.Size = 14
.Borders(xlDiagonalDown).Weight = xlThin
.Borders(xlDiagonalUp).Weight = xlThin
End With
End Select
Next

gruss hary

Anzeige
...und xlHairline, Hary...? ;-) Gruß owT
08.12.2013 18:57:04
Luc:-?
:-?

AW: VBA oder Formeln ?
09.12.2013 08:31:29
Howard
Hallo Hary,
bei Deinem Script kommt die Fehlermeldung "Methode Range für Object-Global fehlgeschlagen"
in Zeile If Range("Control")...
Was bedeutet der Ausdruck Range("Control") ?
Gruß
Howard

AW: VBA oder Formeln ?
09.12.2013 08:53:49
hary
Moin Howard
"Was bedeutet der Ausdruck Range("Control")?"
Matthias hat die Kontrollzelle G11 benannt. Name der Zelle: Control
Man kann auch schreiben Range("G11")
gruss hary

317 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige