![]() |
|
#1
|
||||
|
||||
![]()
I think this is what you are trying to get to. The Labels macro here is searching the find the first empty cell (label position) and putting some text into it. I think you want the 'to address' to go here but you have a problem with where that information comes from. If the userform is open, and the user has made a selection then you can get the address from there. However, you have put the macro outside of the userform and therefore it is not a safe assumption that the userform is open - so you can't harvest this address. An alternative is to get the address from the text box on the ToFrom sheet - this would be a lot easier if you had the address in a fixed cell address instead of a shape.
I make all text in old cells have white text so nothing prints on those cells (assumes you have already printed on those label positions) Code:
Sub Labels() Dim aSheet As Worksheet, aShape As Shape, aRng As Range Dim rngEmpty As Range, rngCell As Range Set aSheet = ActiveWorkbook.Sheets("Outer Envelope") Set aRng = aSheet.Range("A1:B7") aRng.Font.Color = RGB(255, 255, 255) 'set all cells to white text 'Find the first empty cell For Each rngCell In aRng If rngCell.Value = "" Then Set rngEmpty = rngCell Exit For End If Next rngCell If rngEmpty Is Nothing Then 'If all cells have content, wipe them all and start again aRng.ClearContents Set rngEmpty = aSheet.Range("A1") End If 'Now write the address to the first empty cell rngEmpty.Font.Color = RGB(0, 0, 0) 'make the text in this cell text black rngEmpty.Value = "Hello sailor" 'where are you going to get the address from? MsgBox "First empty cell was: " & rngEmpty.Address End Sub Set your label worksheet to centre the content in the cells vertically so they print in the middle of the label.
__________________
Andrew Lockton Chrysalis Design, Melbourne Australia |
#2
|
|||||||
|
|||||||
![]()
Ugh - I was halfway thru replying and realised that I have done a SHOCKING job in naming the worksheets, totally my mistake and lesson learnt as it's confusing me in replying and no doubt even worse for you trying to decipher what I am trying to do.
The currently named 'Inner envelope' worksheet should have been named 'Addresses' and the currently named 'ToFrom' worksheet should have named 'Inner envelope'. I can update the names and change the code to reflect the changed names and re-upload if you think that will assist? Quote:
Column B of the table populates the 'To' address and Column C of the table populates the 'From' address on the 'ToFrom' worksheet - with the macro knowing what addresses are needed for the Inner envelope as the user has selected them on the Userform. What I am hoping is that, prior to the user clicking the 'Create labels' on the Userform, the Userform To and From address selections would then be able to be used to also populate two labels with the 'To' and 'From' addresses on the Outer envelope and based on the addresses from Column D. Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Thanks for the reminder! |
![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
How to select multiple criteria from same column? | LearnerExcel | Excel | 1 | 03-10-2018 07:41 AM |
move the milestone label to left of column | wilster31 | Project | 0 | 07-31-2017 07:58 AM |
Error message in pivot when i try drag and placing a column in the row label | olybobo | Excel | 0 | 05-10-2016 02:05 PM |
![]() |
markg2 | Mail Merge | 1 | 12-22-2011 04:07 PM |
![]() |
Lisa Cotton | Word Tables | 1 | 04-14-2011 04:49 PM |