Мне нужно скопировать слайды из одной мастер-колоды в другую. Мастер-колода содержит около 150 слайдов. Есть 2 слайда для каждой темы и 75 тем есть, каждое название темы уникально. Название каждого слайда включает название темы, поэтому я перебираю названия, а те, где я нахожу совпадение, должны быть скопированы в другую колоду. Проблема иногда в коде пропускает один или два слайда. Там абсолютно нет шаблона. если я выполню код на одном и том же наборе данных дважды, будут разные слайды, которые будут отсутствовать. Если я запускаю его несколько раз, я также могу получить абсолютно безупречный результат.
For iKI = intCountKISH To 3 Step -1 'iterating through the list of topics which are to be copied
strKIOSI = Trim(Workbooks(strActiveWorkbook).Worksheets(strTabITL).Cells(iKI, jCountSH)) ' picks up topic
If (strKIOSI <> Empty) Then 'if topic is not empty
For cntLib = countLibSlides To 1 Step -1 ' iterating through all the slides of master deck
titleText = Trim(libraryDeck.Slides(cntLib).Shapes("Title 1").TextFrame.TextRange.Text) 'reads title of slides in master deck
If (InStr(1, titleText, strKIOSI, 1) <> 0) Then ' if there is a match in titles for topic name
libraryDeck.Slides(cntLib).Copy 'copy the slide from master deck
pptDeck.Slides.Paste 5 'paste in the destination deck
Application.Wait (Now + TimeValue("00:00:01")) 'delay
End If
Next
End If
Next iKI
В заголовках нет ничего плохого, потому что повторный запуск кода на тех же данных дает мне идеальные результаты.
Я попытался добавить задержку, чтобы дать время для завершения операции вставки, но это тоже не помогло.