PowerPoint sunumunda bir slaydı programlı olarak kopyalamaya çalışıyorum ve orijinalin hemen ardından yapıştırın.PowerPoint sunusunda slaytın dizinini almanın doğrudan bir yolu var mı?
İlk düşüncem eski slaytın dizinini almak ve kopyayı istenen yeni dizine eklemek oldu, ancak bu dizini almak için basit bir yol bulamıyorum. Slides.IndexOf(Slide slide)
gibi bir şey olmasını bekledim ama böyle bir şey bulamadım. Çalıştığım anlaşılan kodun ardından çok eski okulu yazmaya başladım, ama bunu yapmanın daha iyi bir yolu olup olmadığını merak ediyorum.
var slide = (PowerPoint.Slide)powerpoint.ActiveWindow.View.Slide;
var slideIndex = 0;
for (int index = 1; index <= presentation.Slides.Count; index++)
{
if (presentation.Slides[index] == slide)
{
slideIndex = index;
break;
}
}
Bu/VSTO, doğru yolda beni koymak herhangi bir giriş takdir ancak, bu VBA veya VB C# olacak!
, doğrudan soruma cevap vermez:
sadece slaydın endeksi elde etmek için, bu kullanabilirsiniz: Burada VBA bir örnek belirli bir slaydın indeksini nasıl alır. Bu söyleniyor, kullanışlı olacak Duplicate yöntemi için teşekkürler! – Mathias
@Mathias: Orijinalin hemen ardından bir slaydı kopyalayıp yapıştırmak için bir teknik istediğini sanmıştım. Ancak, Slayt dizini elde etme yolunu güncelledim. –
Teşekkürler! Bu endeksi elde etmenin bir yolu olduğunu biliyordum, Slaytların kendisinde bir özellik değil, Slaytlar'da bir yöntem olmasını bekliyordum. Ve çok kullanışlı gelecek olan Çoğaltma hakkındaki ipucunu takdir ediyorum. – Mathias