title: PowerPoint VSTO Add-in - add a shape with a tag
body: <p>I would like to programatically add a shape into the current slide of PowerPoint in C# .NET</p>
  
  <p>So, I have created a VSTO Add-in with a ribbon which has a button "Add Shape".
  When this button is clicked, the following code executes:</p>
  
  <pre><code>Globals.ThisAddIn.Application.ActiveWindow.View.Slide.Shapes.AddShape(
      Microsoft.Office.Core.MsoAutoShapeType.msoShapeRectangle, 0, 0, 10, 20);
  </code></pre>
  
  <p>When this code executes, it correctly adds a rectangle shape into the current slide.</p>
  
  <p>I would like to modify this shape later (for example; change it's width). To be able to do this, I read somewhere that the shape should have a unique identifier and this can be achieved using a <code>Tag</code>?</p>
  
  <p>If so, how do you add a shape and set a tag on the newly added shape, so that I can manipulate it later?</p>
  
  <p>Also, how do you iterate through the collection of shapes on the current slide, so that you can check the tag of the shape to see if that's the one I want to modify?</p>