<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Randomizing Macro in QlikView</title>
    <link>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419382#M156048</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;Thank you all for your answers. I coud use this one that I found. But it does not work in QV. Remember that I don't want repeated numbers.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;Private&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Shared&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Sub&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; GetRandom&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;ByVal&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; oMax &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;As&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Integer&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;,&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;ByRef&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; currentVals &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;As&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; List&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;Of &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Integer&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;))&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Dim&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; oRand &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;As&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;New&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; Random&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;Now&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;Millisecond&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Dim&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; oTemp &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;As&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Integer&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="pun"&gt;=&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="pun"&gt;-&lt;/SPAN&gt;&lt;SPAN class="lit"&gt;1&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Do&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Until&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; currentVals&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;Count &lt;/SPAN&gt;&lt;SPAN class="pun"&gt;=&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; IMG_COUNT&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; oTemp &lt;/SPAN&gt;&lt;SPAN class="pun"&gt;=&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; oRand&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Next&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="lit"&gt;1&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;,&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; oMax&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;If&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Not&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; currentVals&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;Contains&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;oTemp&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Then&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; currentVals&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;Add&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;oTemp&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Loop&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;End&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Sub&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;On the other hand they are thousands of clients. This module works fine if the difference between the ordinal of the list and the ordinal of the sample is big. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;I went for the next solution:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;Every time I reload my document I obtain a randomized list of clients. After that, in the macro, I just have to pick up the first ones, it doesn't matter what's the cardinal or the sample size.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;That's it.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;Thanks everybody anyway.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 11 Feb 2013 08:42:24 GMT</pubDate>
    <dc:creator>christian77</dc:creator>
    <dc:date>2013-02-11T08:42:24Z</dc:date>
    <item>
      <title>Randomizing Macro</title>
      <link>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419377#M156043</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a list of 10 Client_id. (1,2,3,4,5,6,7,8,9,10)&lt;/P&gt;&lt;P&gt;I need to select ramdomly a sample of 3. (3,4,9)&lt;/P&gt;&lt;P&gt;They have to be different.&lt;/P&gt;&lt;P&gt;I have the process in progress but I still need to compare each item with the list. If it is in the list, repeat the process, otherwise go to next.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So my problem is, does the list contain the item?&lt;/P&gt;&lt;P&gt;What is the function for that?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 08 Feb 2013 10:51:06 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419377#M156043</guid>
      <dc:creator>christian77</dc:creator>
      <dc:date>2013-02-08T10:51:06Z</dc:date>
    </item>
    <item>
      <title>Re: Randomizing Macro</title>
      <link>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419378#M156044</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;try to create string from Your clients list string = 1,2,3,4,5,6,7,8,9,10&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and each tome You generate a sample check it by &lt;SPAN style="font-style: normal; font-weight: bold;"&gt;index() &lt;/SPAN&gt;&lt;SPAN style="font-style: normal;"&gt;function&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-style: normal;"&gt;index(string,sample)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-style: normal;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 08 Feb 2013 11:41:27 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419378#M156044</guid>
      <dc:creator />
      <dc:date>2013-02-08T11:41:27Z</dc:date>
    </item>
    <item>
      <title>Re: Randomizing Macro</title>
      <link>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419379#M156045</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The thing is that QlikView Visual Basic is so basic that it doesn't have that function, neither the function Contains.&lt;/P&gt;&lt;P&gt;It is a very particular and narrow VisualBasic.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 08 Feb 2013 11:45:19 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419379#M156045</guid>
      <dc:creator>christian77</dc:creator>
      <dc:date>2013-02-08T11:45:19Z</dc:date>
    </item>
    <item>
      <title>Re: Randomizing Macro</title>
      <link>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419380#M156046</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You can create the sample in GUI in a variable per rand() and this result to request in macro.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Marcus&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 08 Feb 2013 16:46:30 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419380#M156046</guid>
      <dc:creator>marcus_sommer</dc:creator>
      <dc:date>2013-02-08T16:46:30Z</dc:date>
    </item>
    <item>
      <title>Re: Randomizing Macro</title>
      <link>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419381#M156047</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, couldn't you just write something like this:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;sub rr&lt;BR /&gt;a = int(10*rnd())+1&lt;/P&gt;&lt;P&gt;b=-1&lt;BR /&gt;c=-1&lt;BR /&gt;do while (a=b or b=-1)&lt;BR /&gt;b = int(10*rnd())+1&lt;BR /&gt;loop&lt;/P&gt;&lt;P&gt;do while (a=b or a=c or b=c or c=-1)&lt;BR /&gt;c = int(10*rnd())+1&lt;BR /&gt;loop&lt;/P&gt;&lt;P&gt;a = "("&amp;amp;a&amp;amp;"|"&amp;amp;b&amp;amp;"|"&amp;amp;c&amp;amp;")"&lt;BR /&gt;x= ActiveDocument.GetVariable("v1").setcontent(a,false)&lt;/P&gt;&lt;P&gt;end sub&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;then do a select in field action using ='$(v1)'&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Steve&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 08 Feb 2013 16:56:02 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419381#M156047</guid>
      <dc:creator>sbaldwin</dc:creator>
      <dc:date>2013-02-08T16:56:02Z</dc:date>
    </item>
    <item>
      <title>Re: Randomizing Macro</title>
      <link>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419382#M156048</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;Thank you all for your answers. I coud use this one that I found. But it does not work in QV. Remember that I don't want repeated numbers.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;Private&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Shared&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Sub&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; GetRandom&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;ByVal&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; oMax &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;As&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Integer&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;,&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;ByRef&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; currentVals &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;As&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; List&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;Of &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Integer&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;))&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Dim&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; oRand &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;As&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;New&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; Random&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;Now&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;Millisecond&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Dim&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; oTemp &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;As&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Integer&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="pun"&gt;=&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="pun"&gt;-&lt;/SPAN&gt;&lt;SPAN class="lit"&gt;1&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Do&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Until&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; currentVals&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;Count &lt;/SPAN&gt;&lt;SPAN class="pun"&gt;=&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; IMG_COUNT&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; oTemp &lt;/SPAN&gt;&lt;SPAN class="pun"&gt;=&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; oRand&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Next&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="lit"&gt;1&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;,&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; oMax&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;If&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Not&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; currentVals&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;Contains&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;oTemp&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Then&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; currentVals&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;.&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;Add&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;(&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;oTemp&lt;/SPAN&gt;&lt;SPAN class="pun"&gt;)&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Loop&lt;/SPAN&gt;&lt;SPAN class="pln"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;End&lt;/SPAN&gt;&lt;SPAN class="pln"&gt; &lt;/SPAN&gt;&lt;SPAN class="kwd"&gt;Sub&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;On the other hand they are thousands of clients. This module works fine if the difference between the ordinal of the list and the ordinal of the sample is big. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;I went for the next solution:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;Every time I reload my document I obtain a randomized list of clients. After that, in the macro, I just have to pick up the first ones, it doesn't matter what's the cardinal or the sample size.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;That's it.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;Thanks everybody anyway.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="kwd"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Feb 2013 08:42:24 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419382#M156048</guid>
      <dc:creator>christian77</dc:creator>
      <dc:date>2013-02-11T08:42:24Z</dc:date>
    </item>
    <item>
      <title>Re: Randomizing Macro</title>
      <link>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419383#M156049</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Christian,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Put your values into an array and when you randomly select a value, replace it with an empty string (or any marker you wish) so it can be checked on the next sample retrieval. Something like this might work for you (note the Randomize command at the top - very important).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;sub RandomSampling&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Randomize&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;'Dummy dataset in an array&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;a=Array(1,2,3,4,5,6,7,8,9,10)&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;'Set values chosen to empty string&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;v = ""&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;maxLoop = 3&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;'Define loop count, checking not greater than number of values in array&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;if maxLoop &amp;gt; Ubound(a) then&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; maxLoop = Ubound(a)&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;end if&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;For z = 1 to maxLoop&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;'Seed the do while flag&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;i = 0&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Do While i=0&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt; &lt;STRONG&gt;&amp;nbsp;&amp;nbsp; x = Int((Rnd()) * Ubound(a)+0.5)&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'msgbox x&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if CStr(a(x)) &amp;lt;&amp;gt; "" then&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; v = CStr(a(x)) &amp;amp; ", " &amp;amp; v&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a(x) = ""&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i=1&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end if&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;loop&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Next&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;v = left(v,len(v)-2)&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Msgbox ("I have chosen values: " &amp;amp; v)&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;end sub&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;flipside&lt;STRONG&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Feb 2013 08:55:51 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419383#M156049</guid>
      <dc:creator>flipside</dc:creator>
      <dc:date>2013-02-11T08:55:51Z</dc:date>
    </item>
    <item>
      <title>Re: Randomizing Macro</title>
      <link>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419384#M156050</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you flipside.&lt;/P&gt;&lt;P&gt;Your macro is good, but I have already solved my problem.&lt;/P&gt;&lt;P&gt;Also, in my first post, I gave an example of a list of 10 elements. The real number can go from 1 to 100 thousand.&lt;/P&gt;&lt;P&gt;On the other hand, if you have to choose 90 values of a list of 100, when you are in the value 85, the loop is going to rebound inside itself many times.&lt;/P&gt;&lt;P&gt;The best and simple solution is bringing the list already randomized by using a SQL built funcktion for this kind of aleatory sampling. QV does not have this kind of random sampling.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SO THE SOLUTION IS:&lt;/P&gt;&lt;P&gt;In the script:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ClientRandomizedList:&lt;/P&gt;&lt;P&gt;LOAD&lt;/P&gt;&lt;P&gt;Client_id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; as Client_id,&lt;/P&gt;&lt;P&gt;Client_id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; as Client2_id;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sql select Client_id&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;order by newid();&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;and this is the correct answer.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Feb 2013 09:07:54 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419384#M156050</guid>
      <dc:creator>christian77</dc:creator>
      <dc:date>2013-02-11T09:07:54Z</dc:date>
    </item>
    <item>
      <title>Re: Randomizing Macro</title>
      <link>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419385#M156051</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;If you are choosing more than 50% of values, then you can do it the other way round and select values to discard so as to mitigate the potential of long-running Do While Loops, but if you have access to SQL then this is possibly a better way as you say.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;flipside&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 11 Feb 2013 09:21:47 GMT</pubDate>
      <guid>https://community.qlik.com/t5/QlikView/Randomizing-Macro/m-p/419385#M156051</guid>
      <dc:creator>flipside</dc:creator>
      <dc:date>2013-02-11T09:21:47Z</dc:date>
    </item>
  </channel>
</rss>

