I have found the following code that parses the text of a PPT file and dumps it into a CSV file.
Sub ExportTextToCSV() Dim oPres As Presentation Dim oSlides As Slides Dim oSld As Slide 'Slide Object Dim oShp As Shape 'Shape Object Dim iFile As Integer 'File handle for output Dim sTempString As String Dim PathSep As String Dim Quote As String Dim Comma As String iFile = FreeFile 'Get a free file number #If Mac Then PathSep = ":" #Else PathSep = "\" #End If Quote = Chr$(34) Comma = "," Set oPres = ActivePresentation Set oSlides = oPres.Slides 'Open output file ' NOTE: errors here if original PPT file hasn't been saved Open oPres.Path & PathSep & "ParsedText1.csv" For Output As iFile For Each oSld In oSlides 'Loop thru each slide For Each oShp In oSld.Shapes 'Loop thru each shape on slide 'Check to see if shape has a text frame and text If oShp.HasTextFrame And oShp.TextFrame.HasText Then sTempString = sTempString & Quote & oShp.TextFrame.TextRange.Text & Quote & Comma End If Next oShp ' print the result to file: Print #iFile, sTempString sTempString = "" Next oSld 'Close output file Close #iFile End Sub
When I run this, it dumps the text into column A of the CSV file. Is there any modification that will allow me to choose which column to dump it into? For example, if i want it to dump into column D, what modification do I do?
Any help is appreciated!
D, write 3 commas before the string.
sTempString = sTempString & Quote & oShp.TextFrame.TextRange.Text & Quote & Comma
sTempString = sTempString & ",,," & Quote & oShp.TextFrame.TextRange.Text & Quote & Comma