Zahl aus Zelle von Excel in VBA Makro Verwenden?
#1
Hallo Zusammen,

da ich im Netz nicht wirklich fündig geworden bin, ich habe aktuell folgendes Makro:

Sub Zufall()
  Dim rng As Range, rngAll As Range
  Dim iRandomize As Integer
  Set rngAll = Range("E32")
  Randomize
  rngAll.ClearContents
  For Each rng In rngAll.Cells
      iRandomize = Int((32 * Rnd) + 1)
      Do Until WorksheetFunction.CountIf(rngAll, iRandomize) = 0
        iRandomize = Int((32 * Rnd) + 1)
      Loop
      rng.Value = iRandomize
  Next rng
End Sub

Nun möchte ich gerne, damit ich nicht immer das Makro abändern muss, den Int, welcher hier 32 ist, dass er den aus einer Zelle in der Excel Tabelle entnimmt, oder aber, dass er die Zahl beim Button drücken abfragt, und dann ebenfalls in die Zelle einträgt (da mit dieser Zahl in Excel selbst berechnungen statt finden), ist das möglich?

Vielen lieben Dank

Gruß

Stephan
Antworten Top
#2
Schau mal:


Angehängte Dateien
.xlsb   __random_plus_snb.xlsb (Größe: 9,33 KB / Downloads: 4)
Zum übersetzen von Excel Formeln:

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

Code:
Sub Zufall()
  Dim rng As Range, rngAll As Range
  Dim iRandomize As Integer, iFakt As Integer
 
  Set rngAll = Range("E32:E40")  '<-- Ausgabebereich: zB. E32:E40
  iFakt = Range("F32").Value     '<-- Faktor: zB. Wert in Zelle F32
 
  Randomize
  rngAll.ClearContents
  For Each rng In rngAll.Cells
      iRandomize = Int((iFakt * Rnd) + 1)
      Do Until WorksheetFunction.CountIf(rngAll, iRandomize) = 0
        iRandomize = Int((iFakt * Rnd) + 1)
      Loop
      rng.Value = iRandomize
  Next rng
End Sub
Mit lieben Grüßen
Anton.

Windows 10 64bit
Office365 32bit
[-] Folgende(r) 1 Nutzer sagt Danke an EA1950 für diesen Beitrag:
  • StephanM82
Antworten Top
#4
Super EA1950,

genau das habe ich gesucht, vielen lieben Dank
Antworten Top


Gehe zu:


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