Spille med en Full Deck

 Hvordan er det for en spiss tittel? Tittelen refererer til det faktum som kan ha et behov for et utvalg av celler med en rekke tall i en vilkårlig rekkefølge. For eksempel vil du kanskje 52 celler fylt med tallene 1 til 52 tilfeldig.

 Tydeligvis er det ingen innebygd i Excel-funksjon for å gi denne muligheten, slik at du blir igjen for å arbeide med makroer. Heldigvis er slike makro ikke er meget vanskelig. Følgende makro vil gjøre utslaget pent:

 Sub Fill Rand
 Som Integer Dim nums
 Som Integer Dim maxval
 As Integer Dim nRows, nCols som Integer
 As Integer Dim j, k som Integer
 Som Integer Dim Ptr
 Vilkårlig

 S = Set Selection
 maxval =
 nRows =
 nCols =

 ReDim nums

 "Fyll den første serien
 J = 1 Til maxval
 nums = j
 nums = Int + 1)
 Neste j

 'Slags matrise på basis av de tilfeldige tallene
 J = 1 Til maxval - 1
 Ptr = j
 For k = j + 1 for maxval
 Hvis nums> nums enn Ptr = k
 Neste k
 Hvis Ptr <> j Dan
 k = nums
 nums nums =
 nums = k
 k = nums
 nums nums =
 nums = k
 End If
 Neste j

 "Fyll cellene
 Ptr = 0
 J = 1 Til nRows
 For k = 1 Til nCols
 Ptr = PTR + 1
 = Nums
 Neste k
 Neste j
 End Sub

 Denne makroen bruker en to-dimensjonal array å finne ut hvilke tall å bruke, og i hvilken rekkefølge de skal brukes. Nær begynnelsen av makro matrisen er fylt med et statisk nummer, og et tilfeldig tall mellom 1 og antall celler. Denne andre nummeret blir så brukt til å sortere matrisen. Så snart matrisen er lagret, er det lett å se de opprinnelige tall i cellene i stedet.

 Forresten, grunnen til at en to-dimensjonal array brukes fordi funksjonen RND VBA brukes til å generere tilfeldige tall kan returnere like verdier. Selv kan ha gjennom den andre dimensjonen av matrisen duplikater, når den endelig sortert array, den første dimensjonen ikke er duplikater.

 For å bruke makro, begynner ved å velge cellene du ønsker å ha fylt med påfølgende verdier i en tilfeldig rekkefølge. Når du kjører makroen, er dette området fylt. For eksempel, hvis du velger ti celler og deretter makroen, da disse cellene er fylt med tallene 1 til 10 tilfeldig.

 Excel tips er din kilde for kostnadseffektiv Microsoft Excel trening. Dette tipset gjelder for Microsoft Excel 97, 2000, 2002 og 2003. Du kan se en versjon av dette tipset for Båndet av Excel kan bli funnet her: Spille med en full dekk.

(0)
(0)
Kommentarer - 0
Ingen kommentarer

Legg en kommentar

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Tegn igjen: 3000
captcha