populating the recipient address in outlook
Hello,
I have a form with 4 checkboxes (night add more) that have email addresses. I cant sort out how to determine which ones are checked to write them into the recipient area. My thought was to set a variable, the say if #1 is checked write it to the variable and if the second is checked add it to the variable or if nothing check # 3 etc etc etc. Am I on the right course? Is there a more efficient way to code this? Thank you |
populating the recipient address in outlook
Hi Thomas
Try this code. No matter how many checkboxes are there the loop collects all receipients which are checked to a string variable Dim Ctrl As MSForms.Control Dim strReceipients as String For Each Ctrl In Me.Controls If TypeOf Ctrl Is MSForms.CheckBox Then If Ctrl.Object.Value = True Then strReceipients = strReceipients & ";" & Ctrl.Caption End If End If Next MsgBox Mid(strReceipients, 2) If this post helps click Yes --------------- Jacob Skaria "thomas donino" wrote: Hello, I have a form with 4 checkboxes (night add more) that have email addresses. I cant sort out how to determine which ones are checked to write them into the recipient area. My thought was to set a variable, the say if #1 is checked write it to the variable and if the second is checked add it to the variable or if nothing check # 3 etc etc etc. Am I on the right course? Is there a more efficient way to code this? Thank you |
populating the recipient address in outlook
The code is breaking on the Me.Controls line
Do I need to reference the actual form name in the code? "Jacob Skaria" wrote: Hi Thomas Try this code. No matter how many checkboxes are there the loop collects all receipients which are checked to a string variable Dim Ctrl As MSForms.Control Dim strReceipients as String For Each Ctrl In Me.Controls If TypeOf Ctrl Is MSForms.CheckBox Then If Ctrl.Object.Value = True Then strReceipients = strReceipients & ";" & Ctrl.Caption End If End If Next MsgBox Mid(strReceipients, 2) If this post helps click Yes --------------- Jacob Skaria "thomas donino" wrote: Hello, I have a form with 4 checkboxes (night add more) that have email addresses. I cant sort out how to determine which ones are checked to write them into the recipient area. My thought was to set a variable, the say if #1 is checked write it to the variable and if the second is checked add it to the variable or if nothing check # 3 etc etc etc. Am I on the right course? Is there a more efficient way to code this? Thank you |
populating the recipient address in outlook
I tried this from a commandbutton click and hence used Me.Controls . You can
refer the form name instead like UserForm1.Controls If this post helps click Yes --------------- Jacob Skaria "thomas donino" wrote: The code is breaking on the Me.Controls line Do I need to reference the actual form name in the code? "Jacob Skaria" wrote: Hi Thomas Try this code. No matter how many checkboxes are there the loop collects all receipients which are checked to a string variable Dim Ctrl As MSForms.Control Dim strReceipients as String For Each Ctrl In Me.Controls If TypeOf Ctrl Is MSForms.CheckBox Then If Ctrl.Object.Value = True Then strReceipients = strReceipients & ";" & Ctrl.Caption End If End If Next MsgBox Mid(strReceipients, 2) If this post helps click Yes --------------- Jacob Skaria "thomas donino" wrote: Hello, I have a form with 4 checkboxes (night add more) that have email addresses. I cant sort out how to determine which ones are checked to write them into the recipient area. My thought was to set a variable, the say if #1 is checked write it to the variable and if the second is checked add it to the variable or if nothing check # 3 etc etc etc. Am I on the right course? Is there a more efficient way to code this? Thank you |
populating the recipient address in outlook
Jacob,
Thank you, its working great now Tom "Jacob Skaria" wrote: I tried this from a commandbutton click and hence used Me.Controls . You can refer the form name instead like UserForm1.Controls If this post helps click Yes --------------- Jacob Skaria "thomas donino" wrote: The code is breaking on the Me.Controls line Do I need to reference the actual form name in the code? "Jacob Skaria" wrote: Hi Thomas Try this code. No matter how many checkboxes are there the loop collects all receipients which are checked to a string variable Dim Ctrl As MSForms.Control Dim strReceipients as String For Each Ctrl In Me.Controls If TypeOf Ctrl Is MSForms.CheckBox Then If Ctrl.Object.Value = True Then strReceipients = strReceipients & ";" & Ctrl.Caption End If End If Next MsgBox Mid(strReceipients, 2) If this post helps click Yes --------------- Jacob Skaria "thomas donino" wrote: Hello, I have a form with 4 checkboxes (night add more) that have email addresses. I cant sort out how to determine which ones are checked to write them into the recipient area. My thought was to set a variable, the say if #1 is checked write it to the variable and if the second is checked add it to the variable or if nothing check # 3 etc etc etc. Am I on the right course? Is there a more efficient way to code this? Thank you |
populating the recipient address in outlook
I have other checkboxes on the form that are not email addresses. How do i
differentiate them? Should I change those to radio buttons? "Jacob Skaria" wrote: I tried this from a commandbutton click and hence used Me.Controls . You can refer the form name instead like UserForm1.Controls If this post helps click Yes --------------- Jacob Skaria "thomas donino" wrote: The code is breaking on the Me.Controls line Do I need to reference the actual form name in the code? "Jacob Skaria" wrote: Hi Thomas Try this code. No matter how many checkboxes are there the loop collects all receipients which are checked to a string variable Dim Ctrl As MSForms.Control Dim strReceipients as String For Each Ctrl In Me.Controls If TypeOf Ctrl Is MSForms.CheckBox Then If Ctrl.Object.Value = True Then strReceipients = strReceipients & ";" & Ctrl.Caption End If End If Next MsgBox Mid(strReceipients, 2) If this post helps click Yes --------------- Jacob Skaria "thomas donino" wrote: Hello, I have a form with 4 checkboxes (night add more) that have email addresses. I cant sort out how to determine which ones are checked to write them into the recipient area. My thought was to set a variable, the say if #1 is checked write it to the variable and if the second is checked add it to the variable or if nothing check # 3 etc etc etc. Am I on the right course? Is there a more efficient way to code this? Thank you |
populating the recipient address in outlook
Added one more check to check whether the caption is a mail id
Dim Ctrl As MSForms.Control Dim strReceipients as String For Each Ctrl In Me.Controls If TypeOf Ctrl Is MSForms.CheckBox Then If Ctrl.Object.Value = True Then If Instr(Ctrl.Caption,"@") 0 Then strReceipients = strReceipients & ";" & Ctrl.Caption End If End If End If Next MsgBox Mid(strReceipients, 2) If this post helps click Yes --------------- Jacob Skaria "thomas donino" wrote: I have other checkboxes on the form that are not email addresses. How do i differentiate them? Should I change those to radio buttons? "Jacob Skaria" wrote: I tried this from a commandbutton click and hence used Me.Controls . You can refer the form name instead like UserForm1.Controls If this post helps click Yes --------------- Jacob Skaria "thomas donino" wrote: The code is breaking on the Me.Controls line Do I need to reference the actual form name in the code? "Jacob Skaria" wrote: Hi Thomas Try this code. No matter how many checkboxes are there the loop collects all receipients which are checked to a string variable Dim Ctrl As MSForms.Control Dim strReceipients as String For Each Ctrl In Me.Controls If TypeOf Ctrl Is MSForms.CheckBox Then If Ctrl.Object.Value = True Then strReceipients = strReceipients & ";" & Ctrl.Caption End If End If Next MsgBox Mid(strReceipients, 2) If this post helps click Yes --------------- Jacob Skaria "thomas donino" wrote: Hello, I have a form with 4 checkboxes (night add more) that have email addresses. I cant sort out how to determine which ones are checked to write them into the recipient area. My thought was to set a variable, the say if #1 is checked write it to the variable and if the second is checked add it to the variable or if nothing check # 3 etc etc etc. Am I on the right course? Is there a more efficient way to code this? Thank you |
All times are GMT +1. The time now is 10:45 PM. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com