[AccessD] Deleting Outlook Contacts

Steve Goodhall steve at goodhall.info
Thu Sep 9 11:38:56 CDT 2010


  BODY { font-family:Arial, Helvetica, sans-serif;font-size:12px; }I
will look at my stuff tonight and see if I have an example.  I have
been having problems with my cable modem so I may not get a reply back
until tomorrow.
 Regards, 
 Steve Goodhall, MSCS, PMP 
 248-505-5204 
 On Thu 09/09/10 12:03 PM , "Rocky Smolin" rockysmolin at bchacc.com
sent:
 Steve:
 " index the contact to be deleted "  not sure what you mean.  I'm a
real
 amateur at the Outlook object model.
 Rocky
 -----Original Message-----
 From: accessd-bounces at databaseadvisors.com [1]
 [accessd-bounces at databaseadvisors.com [2]] On Behalf Of Steve
Goodhall
 Sent: Thursday, September 09, 2010 8:55 AM
 To: Access Developers discussion and problem solving
 Subject: Re: [AccessD] Deleting Outlook Contacts
   BODY { font-family:Arial, Helvetica, sans-serif;font-size:12px; }I
think
 your problem is with the way For Each iterates in olContacts.  I am
out on a
 customer site and don't have access to all my test beds, but I would
suggest
 that you index the contact to be deleted and count down from the
number of
 items in the olContacts collection.  I don't remember whether that
index is
 zero based or one based.
  I also suggest that you lose the "GoTo" but that's just style.
  Regards,
  Steve Goodhall, MSCS, PMP
  248-505-5204
  On Thu 09/09/10 11:25 AM , "Rocky Smolin" rockysmolin at bchacc.com
[3]
 sent:
  Dear List:
  Still struggling with deleting the Outlook contacts.  I found that
looping
 through the items and deleting them deleted half so if I started
with 1000
 contacts at the end of the loop I had 500 left.  If I sent the
program back
 through the loop I ended up with 250.  etc.
  So iterating that loop until the Count = 0 works but it's kludgey. 
 Why does
  it leave half of the contacts behind each time?
  Here's the code:
      ' delete all the current contacts
      Set olContacts = olFolder.Items
  DeleteAgain:
      Me.txtProcessing = "Deleting..." & olContacts.Count
      Me.Repaint
      For Each olContactItem In olContacts
          'MsgBox olContactItem.LastName & ", " &
olContactItem.FirstName & "
  - " & olContacts.Count
          olContactItem.Delete
          DoEvents
      Next
      Set olContacts = olFolder.Items
      If olContacts.Count  0 Then GoTo DeleteAgain:
  Me.txtProcessing displays the number of contacts each time through
the big
 loop.  So that's how I know it's only deleting 1/2 each time. When I
 uncomment the MsgBox line inside the loop, it shows the count going
to zero
 each time the loop executes.  But after the loop finishes, there's
still 1/2
 the contacts left.  refreshing the count by Set olContacts =
olFolder.Items
 gives the right count again.
  Any idea what the heck is going on here?
  MTIA
  Rocky
  --
  AccessD mailing list
  AccessD at databaseadvisors.com [4] [1]
  http://databaseadvisors.com/mailman/listinfo/accessd
  Website: http://www.databaseadvisors.com
 Links:
 ------
 [1] AccessD at databaseadvisors.com [5]
 --
 AccessD mailing list
 AccessD at databaseadvisors.com [6]
 http://databaseadvisors.com/mailman/listinfo/accessd
 Website: http://www.databaseadvisors.com
 -- 
 AccessD mailing list
 AccessD at databaseadvisors.com [7]
 http://databaseadvisors.com/mailman/listinfo/accessd
 Website: http://www.databaseadvisors.com
 

Links:
------
[1] mailto:accessd-bounces at databaseadvisors.com
[2] mailto:accessd-bounces at databaseadvisors.com
[3] mailto:rockysmolin at bchacc.com
[4] mailto:AccessD at databaseadvisors.com
[5] mailto:AccessD at databaseadvisors.com
[6] mailto:AccessD at databaseadvisors.com
[7] mailto:AccessD at databaseadvisors.com



More information about the AccessD mailing list