![]() |
Print VBA code in Editor format colors
I originally posted this question on 8/8/2005 in
microsoft.public.office.developer.officedev.other, but since I still have not gotten any response, I decided to try again by posting it in this Discussion Group. In the Visual Basic Editor under Tools - Options - Editor format, I can specify the code colors for Normal Text, Comment Text, Keyword Text, etc. This is a wonderful feature when trying to edit a macro. However, when I print the code so that I can review it and pencil in edits that I want to make when I return to my computer, everything is black even though I sent it to a color printer. IS THERE A WAY TO PRINT THE CODE IN THE SPECIFIED COLORS? I tried selecting all, copying, and pasting into a Word document in hopes that it would retain the colors, but it doesn't. Any other ideas? Sarah Jane |
Print VBA code in Editor format colors
The vbe does not print in color.
-- Regards, Tom Ogilvy "Sarah Jane" wrote in message ... I originally posted this question on 8/8/2005 in microsoft.public.office.developer.officedev.other, but since I still have not gotten any response, I decided to try again by posting it in this Discussion Group. In the Visual Basic Editor under Tools - Options - Editor format, I can specify the code colors for Normal Text, Comment Text, Keyword Text, etc. This is a wonderful feature when trying to edit a macro. However, when I print the code so that I can review it and pencil in edits that I want to make when I return to my computer, everything is black even though I sent it to a color printer. IS THERE A WAY TO PRINT THE CODE IN THE SPECIFIED COLORS? I tried selecting all, copying, and pasting into a Word document in hopes that it would retain the colors, but it doesn't. Any other ideas? Sarah Jane |
Print VBA code in Editor format colors
Thanks. I think I'll go post a Suggestion for Microsoft. :^)
Sarah Jane "Tom Ogilvy" wrote: The vbe does not print in color. -- Regards, Tom Ogilvy "Sarah Jane" wrote in message ... I originally posted this question on 8/8/2005 in microsoft.public.office.developer.officedev.other, but since I still have not gotten any response, I decided to try again by posting it in this Discussion Group. In the Visual Basic Editor under Tools - Options - Editor format, I can specify the code colors for Normal Text, Comment Text, Keyword Text, etc. This is a wonderful feature when trying to edit a macro. However, when I print the code so that I can review it and pencil in edits that I want to make when I return to my computer, everything is black even though I sent it to a color printer. IS THERE A WAY TO PRINT THE CODE IN THE SPECIFIED COLORS? I tried selecting all, copying, and pasting into a Word document in hopes that it would retain the colors, but it doesn't. Any other ideas? Sarah Jane |
Print VBA code in Editor format colors
Just some added:
http://support.microsoft.com/default...b;en-us;213191 XL2000: Modules Cannot Be Printed in Color http://support.microsoft.com/default...b;en-us;173083 Modules Cannot Be Printed in Color -- Regards, Tom Ogilvy "Sarah Jane" wrote in message ... Thanks. I think I'll go post a Suggestion for Microsoft. :^) Sarah Jane "Tom Ogilvy" wrote: The vbe does not print in color. -- Regards, Tom Ogilvy "Sarah Jane" wrote in message ... I originally posted this question on 8/8/2005 in microsoft.public.office.developer.officedev.other, but since I still have not gotten any response, I decided to try again by posting it in this Discussion Group. In the Visual Basic Editor under Tools - Options - Editor format, I can specify the code colors for Normal Text, Comment Text, Keyword Text, etc. This is a wonderful feature when trying to edit a macro. However, when I print the code so that I can review it and pencil in edits that I want to make when I return to my computer, everything is black even though I sent it to a color printer. IS THERE A WAY TO PRINT THE CODE IN THE SPECIFIED COLORS? I tried selecting all, copying, and pasting into a Word document in hopes that it would retain the colors, but it doesn't. Any other ideas? Sarah Jane |
Print VBA code in Editor format colors
Hi Sarah,
I developed a macro in Word that will color all of your comments green and put a line under each sub or function (in code that you have pasted into Word from the vbe of any MS office program). I was originally going to go all out and have it color the keywords blue as well, but I ran out of motivation-it seemed to me that having the comments green and separating the procedures acheived my goal of making it more readable. Anyway, let me know if you're interested and I'll post the code. -Dave "Tom Ogilvy" wrote: Just some added: http://support.microsoft.com/default...b;en-us;213191 XL2000: Modules Cannot Be Printed in Color http://support.microsoft.com/default...b;en-us;173083 Modules Cannot Be Printed in Color -- Regards, Tom Ogilvy "Sarah Jane" wrote in message ... Thanks. I think I'll go post a Suggestion for Microsoft. :^) Sarah Jane "Tom Ogilvy" wrote: The vbe does not print in color. -- Regards, Tom Ogilvy "Sarah Jane" wrote in message ... I originally posted this question on 8/8/2005 in microsoft.public.office.developer.officedev.other, but since I still have not gotten any response, I decided to try again by posting it in this Discussion Group. In the Visual Basic Editor under Tools - Options - Editor format, I can specify the code colors for Normal Text, Comment Text, Keyword Text, etc. This is a wonderful feature when trying to edit a macro. However, when I print the code so that I can review it and pencil in edits that I want to make when I return to my computer, everything is black even though I sent it to a color printer. IS THERE A WAY TO PRINT THE CODE IN THE SPECIFIED COLORS? I tried selecting all, copying, and pasting into a Word document in hopes that it would retain the colors, but it doesn't. Any other ideas? Sarah Jane |
Print VBA code in Editor format colors
Hi Dave,
That would be wonderful! I was just thinking about going to go write a macro myself. I would greatly appreciate your allowing me to use yours instead. Many thanks, Sarah Jane "DGolds" wrote: Hi Sarah, I developed a macro in Word that will color all of your comments green and put a line under each sub or function (in code that you have pasted into Word from the vbe of any MS office program). I was originally going to go all out and have it color the keywords blue as well, but I ran out of motivation-it seemed to me that having the comments green and separating the procedures acheived my goal of making it more readable. Anyway, let me know if you're interested and I'll post the code. -Dave "Tom Ogilvy" wrote: Just some added: http://support.microsoft.com/default...b;en-us;213191 XL2000: Modules Cannot Be Printed in Color http://support.microsoft.com/default...b;en-us;173083 Modules Cannot Be Printed in Color -- Regards, Tom Ogilvy "Sarah Jane" wrote in message ... Thanks. I think I'll go post a Suggestion for Microsoft. :^) Sarah Jane "Tom Ogilvy" wrote: The vbe does not print in color. -- Regards, Tom Ogilvy "Sarah Jane" wrote in message ... I originally posted this question on 8/8/2005 in microsoft.public.office.developer.officedev.other, but since I still have not gotten any response, I decided to try again by posting it in this Discussion Group. In the Visual Basic Editor under Tools - Options - Editor format, I can specify the code colors for Normal Text, Comment Text, Keyword Text, etc. This is a wonderful feature when trying to edit a macro. However, when I print the code so that I can review it and pencil in edits that I want to make when I return to my computer, everything is black even though I sent it to a color printer. IS THERE A WAY TO PRINT THE CODE IN THE SPECIFIED COLORS? I tried selecting all, copying, and pasting into a Word document in hopes that it would retain the colors, but it doesn't. Any other ideas? Sarah Jane |
Print VBA code in Editor format colors
Here it is:
Sub MakeCommentsGreen() On Error GoTo Handler Dim lngResponse As Long, strMsg As String Dim i As Long Dim blnEndProc As Boolean lngResponse = MsgBox("Running this procedure on text other than Visual Basic " & _ "code may have unintended consequences. Continue?", vbYesNo) If lngResponse = vbYes Then With Selection ' Beginning of document .HomeKey Unit:=wdStory For i = 1 To ActiveDocument.BuiltInDocumentProperties(wdPropert yLines) '1st character in line .MoveRight Unit:=wdCharacter, Count:=1, Extend:=wdExtend 'Find the 1st non-blank character in the line Do Until .Characters(1) < " " .MoveRight Unit:=wdCharacter, Count:=1 Loop 'Select the line .EndKey Unit:=wdLine, Extend:=wdExtend 'Check for end of procedure Select Case Left(.Text, Len(.Text) - 1) Case "End Sub", "End Function" blnEndProc = True Case Else blnEndProc = False End Select If Not blnEndProc Then 'Change font color of comments to green If .Characters(1) = "'" Then .Font.Color = wdColorGreen .Collapse ElseIf InStrRev(.Text, "'") InStrRev(.Text, Chr(34)) Then Do Until .Characters(1) = "'" .Collapse .MoveRight Unit:=wdCharacter, Count:=1 Loop .EndKey Unit:=wdLine, Extend:=wdExtend .Font.Color = wdColorGreen End If Else 'Add bottom border after end sub and end function statements With .Borders(wdBorderBottom) .LineStyle = Options.DefaultBorderLineStyle .LineWidth = Options.DefaultBorderLineWidth .Color = Options.DefaultBorderColor End With End If 'Next line .MoveDown Unit:=wdLine, Count:=1 .HomeKey Unit:=wdLine Next i End With End If ExitHe Exit Sub Handler: MsgBox "Unexpected error #" & Err.Number & ": " & Err.Description Resume ExitHere End Sub I have this in a module in "Normal" in MS Word so I can run it on any doc. Hope it helps. -Dave "Sarah Jane" wrote: Hi Dave, That would be wonderful! I was just thinking about going to go write a macro myself. I would greatly appreciate your allowing me to use yours instead. Many thanks, Sarah Jane "DGolds" wrote: Hi Sarah, I developed a macro in Word that will color all of your comments green and put a line under each sub or function (in code that you have pasted into Word from the vbe of any MS office program). I was originally going to go all out and have it color the keywords blue as well, but I ran out of motivation-it seemed to me that having the comments green and separating the procedures acheived my goal of making it more readable. Anyway, let me know if you're interested and I'll post the code. -Dave "Tom Ogilvy" wrote: Just some added: http://support.microsoft.com/default...b;en-us;213191 XL2000: Modules Cannot Be Printed in Color http://support.microsoft.com/default...b;en-us;173083 Modules Cannot Be Printed in Color -- Regards, Tom Ogilvy "Sarah Jane" wrote in message ... Thanks. I think I'll go post a Suggestion for Microsoft. :^) Sarah Jane "Tom Ogilvy" wrote: The vbe does not print in color. -- Regards, Tom Ogilvy "Sarah Jane" wrote in message ... I originally posted this question on 8/8/2005 in microsoft.public.office.developer.officedev.other, but since I still have not gotten any response, I decided to try again by posting it in this Discussion Group. In the Visual Basic Editor under Tools - Options - Editor format, I can specify the code colors for Normal Text, Comment Text, Keyword Text, etc. This is a wonderful feature when trying to edit a macro. However, when I print the code so that I can review it and pencil in edits that I want to make when I return to my computer, everything is black even though I sent it to a color printer. IS THERE A WAY TO PRINT THE CODE IN THE SPECIFIED COLORS? I tried selecting all, copying, and pasting into a Word document in hopes that it would retain the colors, but it doesn't. Any other ideas? Sarah Jane |
Print VBA code in Editor format colors
Dave,
I tried it, and it is totally awesome! The only thing your macro didn't catch, because it no longer had the apostrophe (') in front of it, was the end of a comment that MS Word wrapped when I pasted the code. The remedy for this is a simple matter of making sure the length of my comment lines is shorter. Thanks so much for your help. Sarah Jane "DGolds" wrote: Here it is: Sub MakeCommentsGreen() On Error GoTo Handler Dim lngResponse As Long, strMsg As String Dim i As Long Dim blnEndProc As Boolean lngResponse = MsgBox("Running this procedure on text other than Visual Basic " & _ "code may have unintended consequences. Continue?", vbYesNo) If lngResponse = vbYes Then With Selection ' Beginning of document .HomeKey Unit:=wdStory For i = 1 To ActiveDocument.BuiltInDocumentProperties(wdPropert yLines) '1st character in line .MoveRight Unit:=wdCharacter, Count:=1, Extend:=wdExtend 'Find the 1st non-blank character in the line Do Until .Characters(1) < " " .MoveRight Unit:=wdCharacter, Count:=1 Loop 'Select the line .EndKey Unit:=wdLine, Extend:=wdExtend 'Check for end of procedure Select Case Left(.Text, Len(.Text) - 1) Case "End Sub", "End Function" blnEndProc = True Case Else blnEndProc = False End Select If Not blnEndProc Then 'Change font color of comments to green If .Characters(1) = "'" Then .Font.Color = wdColorGreen .Collapse ElseIf InStrRev(.Text, "'") InStrRev(.Text, Chr(34)) Then Do Until .Characters(1) = "'" .Collapse .MoveRight Unit:=wdCharacter, Count:=1 Loop .EndKey Unit:=wdLine, Extend:=wdExtend .Font.Color = wdColorGreen End If Else 'Add bottom border after end sub and end function statements With .Borders(wdBorderBottom) .LineStyle = Options.DefaultBorderLineStyle .LineWidth = Options.DefaultBorderLineWidth .Color = Options.DefaultBorderColor End With End If 'Next line .MoveDown Unit:=wdLine, Count:=1 .HomeKey Unit:=wdLine Next i End With End If ExitHe Exit Sub Handler: MsgBox "Unexpected error #" & Err.Number & ": " & Err.Description Resume ExitHere End Sub I have this in a module in "Normal" in MS Word so I can run it on any doc. Hope it helps. -Dave "Sarah Jane" wrote: Hi Dave, That would be wonderful! I was just thinking about going to go write a macro myself. I would greatly appreciate your allowing me to use yours instead. Many thanks, Sarah Jane "DGolds" wrote: Hi Sarah, I developed a macro in Word that will color all of your comments green and put a line under each sub or function (in code that you have pasted into Word from the vbe of any MS office program). I was originally going to go all out and have it color the keywords blue as well, but I ran out of motivation-it seemed to me that having the comments green and separating the procedures acheived my goal of making it more readable. Anyway, let me know if you're interested and I'll post the code. -Dave "Tom Ogilvy" wrote: Just some added: http://support.microsoft.com/default...b;en-us;213191 XL2000: Modules Cannot Be Printed in Color http://support.microsoft.com/default...b;en-us;173083 Modules Cannot Be Printed in Color -- Regards, Tom Ogilvy "Sarah Jane" wrote in message ... Thanks. I think I'll go post a Suggestion for Microsoft. :^) Sarah Jane "Tom Ogilvy" wrote: The vbe does not print in color. -- Regards, Tom Ogilvy "Sarah Jane" wrote in message ... I originally posted this question on 8/8/2005 in microsoft.public.office.developer.officedev.other, but since I still have not gotten any response, I decided to try again by posting it in this Discussion Group. In the Visual Basic Editor under Tools - Options - Editor format, I can specify the code colors for Normal Text, Comment Text, Keyword Text, etc. This is a wonderful feature when trying to edit a macro. However, when I print the code so that I can review it and pencil in edits that I want to make when I return to my computer, everything is black even though I sent it to a color printer. IS THERE A WAY TO PRINT THE CODE IN THE SPECIFIED COLORS? I tried selecting all, copying, and pasting into a Word document in hopes that it would retain the colors, but it doesn't. Any other ideas? Sarah Jane |
Print VBA code in Editor format colors
Pretty-Print:
http://www.submain.com/?nav=products.pcp has a free evaluation copy. -- Regards, Tom Ogilvy "Sarah Jane" wrote in message ... Dave, I tried it, and it is totally awesome! The only thing your macro didn't catch, because it no longer had the apostrophe (') in front of it, was the end of a comment that MS Word wrapped when I pasted the code. The remedy for this is a simple matter of making sure the length of my comment lines is shorter. Thanks so much for your help. Sarah Jane "DGolds" wrote: Here it is: Sub MakeCommentsGreen() On Error GoTo Handler Dim lngResponse As Long, strMsg As String Dim i As Long Dim blnEndProc As Boolean lngResponse = MsgBox("Running this procedure on text other than Visual Basic " & _ "code may have unintended consequences. Continue?", vbYesNo) If lngResponse = vbYes Then With Selection ' Beginning of document .HomeKey Unit:=wdStory For i = 1 To ActiveDocument.BuiltInDocumentProperties(wdPropert yLines) '1st character in line .MoveRight Unit:=wdCharacter, Count:=1, Extend:=wdExtend 'Find the 1st non-blank character in the line Do Until .Characters(1) < " " .MoveRight Unit:=wdCharacter, Count:=1 Loop 'Select the line .EndKey Unit:=wdLine, Extend:=wdExtend 'Check for end of procedure Select Case Left(.Text, Len(.Text) - 1) Case "End Sub", "End Function" blnEndProc = True Case Else blnEndProc = False End Select If Not blnEndProc Then 'Change font color of comments to green If .Characters(1) = "'" Then .Font.Color = wdColorGreen .Collapse ElseIf InStrRev(.Text, "'") InStrRev(.Text, Chr(34)) Then Do Until .Characters(1) = "'" .Collapse .MoveRight Unit:=wdCharacter, Count:=1 Loop .EndKey Unit:=wdLine, Extend:=wdExtend .Font.Color = wdColorGreen End If Else 'Add bottom border after end sub and end function statements With .Borders(wdBorderBottom) .LineStyle = Options.DefaultBorderLineStyle .LineWidth = Options.DefaultBorderLineWidth .Color = Options.DefaultBorderColor End With End If 'Next line .MoveDown Unit:=wdLine, Count:=1 .HomeKey Unit:=wdLine Next i End With End If ExitHe Exit Sub Handler: MsgBox "Unexpected error #" & Err.Number & ": " & Err.Description Resume ExitHere End Sub I have this in a module in "Normal" in MS Word so I can run it on any doc. Hope it helps. -Dave "Sarah Jane" wrote: Hi Dave, That would be wonderful! I was just thinking about going to go write a macro myself. I would greatly appreciate your allowing me to use yours instead. Many thanks, Sarah Jane "DGolds" wrote: Hi Sarah, I developed a macro in Word that will color all of your comments green and put a line under each sub or function (in code that you have pasted into Word from the vbe of any MS office program). I was originally going to go all out and have it color the keywords blue as well, but I ran out of motivation-it seemed to me that having the comments green and separating the procedures acheived my goal of making it more readable. Anyway, let me know if you're interested and I'll post the code. -Dave "Tom Ogilvy" wrote: Just some added: http://support.microsoft.com/default...b;en-us;213191 XL2000: Modules Cannot Be Printed in Color http://support.microsoft.com/default...b;en-us;173083 Modules Cannot Be Printed in Color -- Regards, Tom Ogilvy "Sarah Jane" wrote in message ... Thanks. I think I'll go post a Suggestion for Microsoft. :^) Sarah Jane "Tom Ogilvy" wrote: The vbe does not print in color. -- Regards, Tom Ogilvy "Sarah Jane" wrote in message ... I originally posted this question on 8/8/2005 in microsoft.public.office.developer.officedev.other, but since I still have not gotten any response, I decided to try again by posting it in this Discussion Group. In the Visual Basic Editor under Tools - Options - Editor format, I can specify the code colors for Normal Text, Comment Text, Keywo rd Text, etc. This is a wonderful feature when trying to edit a macro. However, when I print the code so that I can review it and pencil in edits that I want to make when I return to my computer, everything is black even though I sent it to a color printer. IS THERE A WAY TO PRINT THE CODE IN THE SPECIFIED COLORS? I tried selecting all, copying, and pasting into a Word document in hopes that it would retain the colors, but it doesn't. Any other ideas? Sarah Jane |
All times are GMT +1. The time now is 05:20 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com