title: Adding command buttons to worksheet at run time and also define events
body: <p>I am trying to add an ActiveX command button in my work sheet at run time. The number of command buttons will depend on the number of lines in the work sheet. I plan to give x and y coordinates in the command button property to position them correctly. I understand that we can insert command buttons in user form this way. </p>
  
  <pre><code>Private Sub CommandButton1_Click()
  
  Me.Controls.Add _
  "Forms.CommandButton.2", "CopyOf"
  End Sub
  </code></pre>
  
  <p>How can we insert command buttons in a work sheet (not user form). Worksheets("abc").Add doesn't work. Also how to I define independent click events for them. For example if I click a command button, it should tell me which row is it in.</p>
  
  <p>Thanks</p>
  
  <p>--------------UPDATE -----------------------------</p>
  
  <p>So I am able to add the command buttons in their required spot dynamically based on the number of lines in my worksheet. </p>
  
  <pre><code>Private Sub addb3(ByVal rows_present_alerts As Integer)
  Dim topcounter As Double
  topcounter = 15.75
  For i = 2 To rows_present_alerts ' The first row has the column headers
     With Worksheets("abc").OLEObjects
     .Add(ClassType:="Forms.CommandButton.1", Link:=False _
      , DisplayAsIcon:=False, Left:=509.25, Top:=topcounter, Width:=48, Height:=14.25 _
      ).Select
      End With
  topcounter = topcounter + 15    ' (not sure this approach will work in monitors with diff screen resolution but anyways) 
  Next i
  End Sub
  </code></pre>
  
  <p>I want to assign click events to each command button. When I click the command button, it should tell me which row is it in. </p>