<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:clearspace="http://www.jivesoftware.com/xmlns/jive/rss" version="2.0">
  <channel>
    <title>Adobe Community: Message List - Loop on all items in a collection</title>
    <link>https://forums.adobe.com/community/indesign/indesign_scripting?view=discussions</link>
    <description>Most recent forum messages</description>
    <language>en</language>
    <pubDate>Tue, 15 Oct 2013 20:28:49 GMT</pubDate>
    <generator>Jive Engage 7.0.0.1  (http://jivesoftware.com/products/)</generator>
    <dc:date>2013-10-15T20:28:49Z</dc:date>
    <dc:language>en</dc:language>
    <item>
      <title>Re: Loop on all items in a collection</title>
      <link>https://forums.adobe.com/message/5762379?tstart=0#5762379</link>
      <description>&lt;!-- [DocumentBodyStart:c2b47e82-5896-4ace-9700-c1605fbcaf5b] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p&gt;You are correct that VB uses 1 based indexing whereas Javascript uses 0 based indexing. &lt;/p&gt;&lt;p style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;I find it easier to use a for each loop (in Javascript):&lt;/p&gt;&lt;p style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;var myMasterSpread;&lt;/p&gt;&lt;p&gt;fore each ( myMasterSpread in myDoc.masterSpreads )&lt;/p&gt;&lt;p&gt;{&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // ... code goes here using the myMasterSpread var&lt;/p&gt;&lt;p&gt;}&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:c2b47e82-5896-4ace-9700-c1605fbcaf5b] --&gt;&lt;img src='/beacon?t=1415905845065' /&gt;</description>
      <pubDate>Tue, 15 Oct 2013 20:28:49 GMT</pubDate>
      <author>forums_noreply@adobe.com</author>
      <guid>https://forums.adobe.com/message/5762379?tstart=0#5762379</guid>
      <dc:date>2013-10-15T20:28:49Z</dc:date>
      <clearspace:dateToText>1 year 1 month ago</clearspace:dateToText>
      <clearspace:objectType>0</clearspace:objectType>
    </item>
    <item>
      <title>Re: Loop on all items in a collection</title>
      <link>https://forums.adobe.com/message/5737380?tstart=0#5737380</link>
      <description>&lt;!-- [DocumentBodyStart:6ac5a27f-e762-405c-9098-4ffae7440e45] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p&gt;Through a lot of trial and error, I discovered the answer to my own question: Collections are base 1, not base 0. My statement&lt;/p&gt;&lt;p style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;For I = 0 To .MasterSpreads.Count - 1&lt;/p&gt;&lt;p style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;should be&lt;/p&gt;&lt;p style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;For I = 1 To .MasterSpreads.Count&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:6ac5a27f-e762-405c-9098-4ffae7440e45] --&gt;</description>
      <pubDate>Fri, 04 Oct 2013 21:36:04 GMT</pubDate>
      <author>forums_noreply@adobe.com</author>
      <guid>https://forums.adobe.com/message/5737380?tstart=0#5737380</guid>
      <dc:date>2013-10-04T21:36:04Z</dc:date>
      <clearspace:dateToText>1 year 1 month ago</clearspace:dateToText>
      <clearspace:replyCount>1</clearspace:replyCount>
      <clearspace:objectType>0</clearspace:objectType>
    </item>
    <item>
      <title>Loop on all items in a collection</title>
      <link>https://forums.adobe.com/message/5736874?tstart=0#5736874</link>
      <description>&lt;!-- [DocumentBodyStart:5b2f15b8-6826-4ac2-9a01-e2f6577ecc3d] --&gt;&lt;div class="jive-rendered-content"&gt;&lt;p&gt;I need to loop on all items in a collection in a VB.NET program that is using the InDesign API. For example, I want to loop on all master spreads in a document. Here is my sample code:&lt;/p&gt;&lt;p style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim I As Integer = 0&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim MyApp As InDesign.Application = Nothing&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim MyDoc As InDesign.Document = Nothing&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim MyPage As InDesign.Page = Nothing &lt;/p&gt;&lt;p style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MyApp = CType(Activator.CreateInstance(Type.GetTypeFromProgID("InDesign.Application"), True), InDesign.Application) &lt;/p&gt;&lt;p style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MyDoc = CType(MyApp.Documents.Add(False), InDesign.Document) &lt;/p&gt;&lt;p style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; With MyDoc&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; With .DocumentPreferences&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .PageHeight = "8.5i"&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .PageWidth = "5.5i"&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End With &lt;/p&gt;&lt;p style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; With .ViewPreferences&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .HorizontalMeasurementUnits = InDesign.idMeasurementUnits.idPoints&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .VerticalMeasurementUnits = InDesign.idMeasurementUnits.idPoints&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End With &lt;/p&gt;&lt;p style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If .MasterSpreads.Count &amp;gt; 0 Then&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; For I = 0 To .MasterSpreads.Count - 1&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim ThisMasterSpread As InDesign.MasterSpread = CType(.MasterSpreads.Item(I), InDesign.MasterSpread)&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next I&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End With&lt;/p&gt;&lt;p style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;When it executes, I get an error on the last Dim statement that defines ThisMasterSpread. It highlights .MasterSpreads.Item(I) and gives the following error:&lt;/p&gt;&lt;p style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;COMException was unhandled: The requested member of the collection does not exist.&lt;/p&gt;&lt;p style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;How do I successfully loop on all master spreads?&lt;/p&gt;&lt;p style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Thanks!&lt;/p&gt;&lt;/div&gt;&lt;!-- [DocumentBodyEnd:5b2f15b8-6826-4ac2-9a01-e2f6577ecc3d] --&gt;</description>
      <pubDate>Fri, 04 Oct 2013 18:27:08 GMT</pubDate>
      <author>forums_noreply@adobe.com</author>
      <guid>https://forums.adobe.com/message/5736874?tstart=0#5736874</guid>
      <dc:date>2013-10-04T18:27:08Z</dc:date>
      <clearspace:dateToText>1 year 1 month ago</clearspace:dateToText>
      <clearspace:replyCount>2</clearspace:replyCount>
      <clearspace:objectType>0</clearspace:objectType>
    </item>
  </channel>
</rss>

