Communicating with PowerPoint using Excel VBA in Hindi
Makhanlal Chaturvedi University / BCA / VBA programming
Communicating with PowerPoint using Excel VBA in Hindi
Communicating with PowerPoint using Excel VBA in Hindi
Introduction
PowerPoint рдФрд░ Excel рджреЛрдиреЛ рд╣реА Microsoft Office рдХреЗ рдмрд╣реБрдд рд╣реА рдкреЙрдкреБрд▓рд░ software рд╣реИрдВред рдЕрдХреНрд╕рд░ рдРрд╕рд╛ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ Excel рдореЗрдВ рдореМрдЬреВрдж data рдХреЛ PowerPoint рдореЗрдВ present рдХрд░рдирд╛ рд╣реЛрддрд╛ рд╣реИ, рдЬреИрд╕реЗ charts, reports рдпрд╛ summariesред рдЗрд╕реЗ manual рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдлреА рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди Excel VBA (Visual Basic for Applications) рдХреА рдорджрдж рд╕реЗ рд╣рдо PowerPoint рдХреЛ automate рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ Excel VBA рд╕реЗ PowerPoint Automation рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
1. Communicating with PowerPoint using Excel VBA in Hindi
- Excel VBA рдХреА рдорджрдж рд╕реЗ рд╣рдо PowerPoint Application рдХреЛ рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рдирдпрд╛ presentation рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ slides insert рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
- PowerPoint рдХреЛ Excel рд╕реЗ connect рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ PowerPoint Object Library рдХреЛ enable рдХрд░рдирд╛ рд╣реЛрддрд╛ рд╣реИред
- рдЗрд╕рдХреЗ рд▓рд┐рдП VBA Editor рдореЗрдВ рдЬрд╛рдХрд░: Tools тЖТ References тЖТ Microsoft PowerPoint xx.0 Object Library рдХреЛ check рдХрд░реЗрдВред
Dim pptApp As PowerPoint.Application
Set pptApp = New PowerPoint.Application
pptApp.Visible = True
рдКрдкрд░ рджрд┐рдП рдЧрдП рдХреЛрдб рд╕реЗ рд╣рдо PowerPoint Application рдХреЛ Excel рд╕реЗ рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕реЗ visible рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рддрд╛рдХрд┐ user рдЙрд╕реЗ рджреЗрдЦ рд╕рдХреЗред
2. Creating PowerPoint slides from Excel VBA in Hindi
- Slides insert рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдкрд╣рд▓реЗ Presentation create рдХрд░рдирд╛ рд╣реЛрддрд╛ рд╣реИред
- рдЙрд╕рдХреЗ рдмрд╛рдж рдЙрд╕рдореЗрдВ slides add рдХрд░рдХреЗ title рдФрд░ content рднреА add рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
Dim pptPres As PowerPoint.Presentation
Set pptPres = pptApp.Presentations.Add
Dim slide As PowerPoint.Slide
Set slide = pptPres.Slides.Add(1, ppLayoutText)
slide.Shapes(1).TextFrame.TextRange.Text = "Excel рд╕реЗ PowerPoint Automation"
slide.Shapes(2).TextFrame.TextRange.Text = "рдпрд╣ slide Excel VBA рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдИ рдЧрдИ рд╣реИред"
рдпрд╣ code рдПрдХ рдирдпрд╛ PowerPoint file рдмрдирд╛рдПрдЧрд╛ рдЬрд┐рд╕рдореЗрдВ рдПрдХ slide рд╣реЛрдЧрд╛, рдФрд░ рдЙрд╕рдореЗрдВ title рд╡ content add рдХрд░ рджреЗрдЧрд╛ред
3. Inserting Excel data into PowerPoint slides using VBA in Hindi
- рдЕрдЧрд░ рд╣рдореЗрдВ Excel sheet рд╕реЗ data рдХреЛ PowerPoint рдореЗрдВ рдбрд╛рд▓рдирд╛ рд╣реИ, рддреЛ рд╣рдо cells рд╕реЗ values рд▓реЗрдХрд░ рдЙрдиреНрд╣реЗрдВ slide рдкрд░ paste рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
- рд╣рдо data рдХреЛ direct text format рдореЗрдВ рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ chart рдХреЗ рд░реВрдк рдореЗрдВ рднреА insert рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1")
Dim dataText As String
dataText = ws.Range("A1").Value & vbNewLine & ws.Range("A2").Value
slide.Shapes(2).TextFrame.TextRange.Text = dataText
рдЗрд╕ code рд╕реЗ Excel рдХреЗ Sheet1 рдХреА A1 рдФрд░ A2 cell рдХреА value slide рдХреЗ content рдореЗрдВ paste рд╣реЛ рдЬрд╛рдПрдЧреАред
Chart рдХреЛ PowerPoint рдореЗрдВ Paste рдХрд░рдирд╛
ws.ChartObjects("Chart 1").Chart.Copy
slide.Shapes.Paste
рдЗрд╕рд╕реЗ Excel рдореЗрдВ рдмрдирд╛ Chart PowerPoint рдХреА current slide рдореЗрдВ paste рд╣реЛ рдЬрд╛рдПрдЧрд╛ред
4. Controlling slide transitions with Excel VBA in Hindi
- Slide Transition PowerPoint рдХрд╛ рдПрдХ visual effect рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рдПрдХ slide рд╕реЗ рджреВрд╕рд░реА slide рдкрд░ рдЬрд╛рдиреЗ рдкрд░ рджрд┐рдЦрддрд╛ рд╣реИред
- рд╣рдо VBA рдХреА рдорджрдж рд╕реЗ transition effect, speed рдФрд░ sound рднреА control рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
With slide.SlideShowTransition
.EntryEffect = ppEffectFadeSmoothly
.Speed = ppTransitionSpeedMedium
.AdvanceOnTime = True
.AdvanceTime = 5
End With
рдпрд╣ code slide рдореЗрдВ Fade Smoothly transition apply рдХрд░реЗрдЧрд╛ рдФрд░ 5 second рдмрд╛рдж slide рдЕрдкрдиреЗ рдЖрдк change рд╣реЛ рдЬрд╛рдПрдЧреАред
5. Saving presentations through Excel VBA automation in Hindi
- Automated presentation рдХреЛ save рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдо VBA рдореЗрдВ save method рдХрд╛ use рдХрд░рддреЗ рд╣реИрдВред
- рд╣рдо рдЪрд╛рд╣реЗрдВ рддреЛ рдЗрд╕реЗ рдХрд┐рд╕реА specific folder рдореЗрдВ рдХрд┐рд╕реА рдирд╛рдо рд╕реЗ save рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
pptPres.SaveAs "C:\Users\Public\Documents\MyPresentation.pptx"
pptPres.Close
pptApp.Quit
Set pptApp = Nothing
рдЗрд╕ code рд╕реЗ рд╣рдорд╛рд░реА PowerPoint file "MyPresentation.pptx" рдирд╛рдо рд╕реЗ save рд╣реЛ рдЬрд╛рдПрдЧреА рдФрд░ PowerPoint application рдмрдВрдж рд╣реЛ рдЬрд╛рдПрдЧрд╛ред
6. Step-by-step Full Example Code
Sub CreatePresentationFromExcel()
Dim pptApp As Object
Dim pptPres As Object
Dim slide As Object
Dim ws As Worksheet
' PowerPoint рдЦреЛрд▓рдирд╛
Set pptApp = CreateObject("PowerPoint.Application")
pptApp.Visible = True
' рдирдпрд╛ рдкреНрд░реЗрдЬреЗрдВрдЯреЗрд╢рди рдмрдирд╛рдирд╛
Set pptPres = pptApp.Presentations.Add
' Excel Sheet reference
Set ws = ThisWorkbook.Sheets("Sheet1")
' Slide 1 рдмрдирд╛рдирд╛
Set slide = pptPres.Slides.Add(1, 1) ' 1 = ppLayoutText
slide.Shapes(1).TextFrame.TextRange.Text = "Excel VBA рд╕реЗ PowerPoint Automation"
slide.Shapes(2).TextFrame.TextRange.Text = "Slide Excel рд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред"
' Slide 2 рдореЗрдВ Excel Data рдбрд╛рд▓рдирд╛
Set slide = pptPres.Slides.Add(2, 1)
slide.Shapes(1).TextFrame.TextRange.Text = "Excel Data"
slide.Shapes(2).TextFrame.TextRange.Text = ws.Range("A1").Value & vbNewLine & ws.Range("A2").Value
' Slide 3 рдореЗрдВ Chart рдбрд╛рд▓рдирд╛
Set slide = pptPres.Slides.Add(3, 1)
ws.ChartObjects(1).Chart.Copy
slide.Shapes.Paste
' Transitions рд▓рдЧрд╛рдирд╛
slide.SlideShowTransition.EntryEffect = 257 ' ppEffectFadeSmoothly
slide.SlideShowTransition.AdvanceOnTime = True
slide.SlideShowTransition.AdvanceTime = 3
' Save рдХрд░рдирд╛
pptPres.SaveAs "C:\Users\Public\Documents\ExcelToPowerPoint.pptx"
pptPres.Close
pptApp.Quit
Set pptApp = Nothing
Set pptPres = Nothing
Set slide = Nothing
Set ws = Nothing
End Sub
7. Beginners рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╕реБрдЭрд╛рд╡
- PowerPoint Automation рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдЖрдкрдХреЛ Excel VBA рдХреА basic рд╕рдордЭ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
- Object Library рдХреЛ enable рдХрд░рдирд╛ рдмрд╣реБрдд рдЬрд░реВрд░реА рд╣реИ, рд╡рд░рдирд╛ PowerPoint рдХреЗ objects рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред
- Code step-by-step рдХрд░рдХреЗ рдЪрд▓рд╛рдПрдВ рддрд╛рдХрд┐ errors рдЬрд▓реНрджреА рдкрдХрдбрд╝ рдореЗрдВ рдЖ рд╕рдХреЗрдВред
- Path рд╕рд╣реА рджреЗрдирд╛ рдЬрд░реВрд░реА рд╣реИ рдЬрд╣рд╛рдВ рдЖрдк рдЕрдкрдиреА file save рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
8. Error Handling Tips
- PowerPoint Application not found тЖТ рдЗрд╕рдХрд╛ рдорддрд▓рдм system рдореЗрдВ PowerPoint install рдирд╣реАрдВ рд╣реИ рдпрд╛ VBA рдореЗрдВ reference рдирд╣реАрдВ рджрд┐рдпрд╛ рдЧрдпрд╛ред
- Chart not found тЖТ Chart рдХрд╛ рдирд╛рдо рдЧрд▓рдд рд╣реИ рдпрд╛ worksheet рдореЗрдВ chart рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИред
- Permission Denied тЖТ Save рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рдЬрд┐рд╕ folder рдореЗрдВ file save рдХрд░ рд░рд╣реЗ рд╣реИрдВ рд╡рд╣рд╛рдВ permission рдирд╣реАрдВ рд╣реИред
9. PowerPoint VBA Object Hierarchy (Table)
VBA Object | Explanation |
---|---|
PowerPoint.Application | PowerPoint рдХреЛ launch рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП |
Presentation | рдирдИ presentation рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП |
Slide | рдПрдХ-рдПрдХ slide рдХреЛ represent рдХрд░рддрд╛ рд╣реИ |
Shape | Text, Chart рдпрд╛ Picture рдХреЛ represent рдХрд░рддрд╛ рд╣реИ |
FAQs
pptPres.SaveAs "C:\MyFolder\MyPresentation.pptx"