Примерно так должно работать (не проверено)
Set rng1 = ThisWorkbook.Worksheets("Name").Range("F4:H4") 'change "Name" to Sheet name
Set rng2 = ThisWorkbook.Worksheets("Name").Range("F5:H5")
Set rng3 = ThisWorkbook.Worksheets("Name").Range("F6:H6")
rngarray = Array(rng1, rng2, rng3)
For x=LBound(rngarray) To UBound(rngarray)
РЕДАКТИРОВАТЬ изменено для соответствия требованиям OP;Я протестировал приведенный ниже код, и он добавит новый pps, скопирует каждый диапазон в каждой строке до последней строки, затем вставит в новый pps.slide и выполнит цикл.Примечание. Я пытался сохранить как можно больше вашего кода.
Dim ppTApp As PowerPoint.Application
Dim ppTPres As PowerPoint.Presentation
Dim ppTSlide As PowerPoint.Slide
Set ppTApp = New PowerPoint.Application
ppTApp.Visible = True
Set ppTPres = ppTApp.Presentations.Add
Dim ws As Worksheet, lRow As Long
Set ws = ThisWorkbook.Sheets("Sheet1") 'Change to meet your needs
lRow = ws.Cells(Rows.Count, 6).End(xlUp).Row
For x = 4 To lRow
ws.Cells(x, 6).Resize(, 3).Copy
Set ppTSlide = ppTPres.Slides.Add(ppTPres.Slides.Count + 1, ppLayoutBlank)
ppTSlide.Shapes.Paste
Next x