internet pencereler Android

libreoffice hesabındaki makrolar. LibreOffice Calc'de makrolar nasıl etkinleştirilir

Yaklaşık 10 yıldır Linux kullanıyorum. Yaklaşık 5 yıl önce OpenOffice'i kullanmaya başladım ve 3 yıl önce - LibreOffice. Şaşırtıcı ve hatta utanç verici bir şekilde, Calc için yazılmış makrolarım yok. Ancak Excel için, bu süre zarfında, basit formlardan ve formüllerden başlayıp, bilgilerin hazırlanmasını otomatikleştiren işletmeler için güçlü eklentilerle biten yeterli sayıda birikmiştir. Bugün, oldukça fazla zaman harcadığım paketi ve yeteneklerini yavaş yavaş incelemeye başlama sözü verdim.


Çoğu insan için makro anlaşılmaz ve belki de gereksiz bir icattır. Onlar için sadece işi optimize etmekle kalmaz, aynı zamanda arttırır. Bu görüş, makro kullanma ilkelerinin anlaşılmamasından kaynaklanmaktadır. Makrolar, bir eylemi birçok kez gerçekleştirmeniz gerektiğinde kullanılır. Çoğu zaman, bu aynı türde belge işlemedir (karmaşık biçimlendirme, seçimler), bazen doldurma formları, formüller, grafikler için hesaplamalar ... Buna ve tercihlerimize dayanarak, makrolarımızı saklama yolunu seçiyoruz:

  • küresel(veya eklenti) - programı açtığınızda her zaman kullanılabilir;
  • kalıplaşmış- belirli bir şablonu açarken kullanılabilir;
  • yerel- yalnızca belirli bir belgede çalışırken kullanılabilir.

İkincisi, çoğunlukla çok karmaşık etkileşimli belgelerde daha az kullanılır.
Bugün, yalnızca kadrosunda BT uzmanları olmayan küçük şirketler, "kullanıma hazır" oldukları için ofis paketlerini (LibreOffice veya MS Office farketmez) kullanıyor. Çoğu durumda, ofis paketi yalnızca eklentilerin dağıtıldığı temeldir ve şirket çalışanı, ayrılana veya başka bir yere taşınana kadar kendisi için kaç küçük ama çok uygun şey yapıldığından şüphelenmez bile. şirket.


Excel'de makro yazmayı öğrenmeye, Makro Kaydet aracıyla başlamanız önerilir. Gerçekten de, eylemlerin parçalarını yazmak, dilin yüzey seviyesini ve gelecekte kullanmanız gerekecek API'yi hayal etmek yeterlidir. Ayrıca, bazen, basit bir makroyu hızlı bir şekilde oluşturmak için, sanki "kağıda yazarak atın" ve ardından cilalayın, kod düzenleyicide akla getirin.

LibreOffice 4.1'de Makro Kaydet aracını bağlama

LibreOffice 4.1'de varsayılan işlev “ Makro Kaydet"Engelli. Bu nedenle, yapılacak ilk şey onu etkinleştirmektir: HizmetSeçenekler (AletlerSeçenekler) LibreOffice grubunu genişletin ve öğenin en altında " Genişletilmiş yetenekler» (« ileri") Karşı kutuyu işaretleyin" Makro kaydını etkinleştir (sınırlı)» (« Makro kaydını etkinleştir (sınırlı)»).

Bundan sonra menünüzde: Araçlar → Makrolar (Araçlar → Makrolar) menü öğesi " Makro Kaydet» (« Makro Kaydet»).

LibreOffice 4.1'de Makro Kaydediciyi Kullanma

Aracı göstermek için " Makroları kaydetme"İşte basit bir örnek:
1. Yeni bir Calc belgesi açalım ve size uygun bir adla diske kaydedelim;
2. Hücreyi seçin A1;
3. Makro kaydını etkinleştirelim Araçlar → Makrolar → "Makro Kaydet" (Araçlar → Makrolar → "Makro Kaydet"). Tek bir düğme ile bir panel görünecektir " Kaydı Bitir» (« Kaydetmeyi bırak»);
5. Hücreyi seçin B1 ve tıklayın " Kaydı Bitir» (« Kaydetmeyi bırak»);
6. Aşağıdaki pencere açılacaktır:

Sadece bu belgede erişimi olan bir makro yapıyoruz, bu nedenle, belgenin adıyla öğeyi açacağız (makale.ods var, belgeyi kaydettiğiniz bu isme sahip olacaksınız) ve mevcut tek kitaplığı seçeceğiz. Standart... İçinde henüz modül yok, o yüzden oluşturalım.
7. Düğmeye basın " Modül oluştur» (« Yeni Modül") Ve açılan pencerede modülün adını girin.

Varsayılan olarak modül, adı verilen boş bir makro ile oluşturulur. Ana... alanına girelim” makro adı» (« makro adı") İstenilen ismi girdim" Ana") Ve tıklayın" bir yere yaz» (« Kaydetmek») Kaydettiğimiz makroyu kaydetmek için. Benim durumumda, makro için zaten böyle bir ad olduğuna dair bir uyarı görünecektir.

Makro kaydedilir ve şimdi belgeyi kaydedersek makro da onunla birlikte kaydedilir. Bu, bu belgeyi her açtığımızda bu makroyu kullanabileceğimiz anlamına gelir.

Bir LibreOffice 4.1 Makrosunu Başlatma ve Düzenleme

LibreOffice 4.1'de makro çalıştırmanın iki yolu vardır.
Önce pencereyi aç " Makroyu Çalıştır»: Araçlar → Makrolar → "Makroyu Çalıştır"(Araçlar → Makrolar → "Makroyu Çalıştır ..."), gerekli makroyu seçin ve " Çalıştırmak».

Davet alındı. :)

Merhaba hackerlar!
Bugün sizlere makroların kullanımından bahsetmek istiyorum. LibreOffice.

Önsöz
Her gün evde ve işte herhangi bir görevi yerine getirmek için ofis uygulamalarını kullanıyoruz. Genellikle bir işte uzmanlaşırsınız ve sonunda aynı görevleri yerine getirirsiniz: aynı metni girin, çok sayıda kısayol tuşu kullanarak biçimlendirin. Tüm bu durumlarda, işlerinizin bir kısmını otomatik hale getirerek değerli çalışma zamanınızdan tasarruf edebilirsiniz.
Makalenin ilerleyen bölümlerinde makroları nasıl kullanacağınızı anlatacağım. LibreOffice.

Makrolar nedir ve neden bunlar?

Makro olağan menü kullanılarak kaydedilebilen belirli eylemler dizisidir. Bir makro kaydı seçtiğinizde, yaptığınız işlemler otomatik olarak script kodu olarak kaydedilir. Ve daha sonraki çalışmalarınızda, programdaki eylemlerinizi tam olarak tekrarlayarak, zaten bağımsız olarak gerçekleştirilecektir. Bir makro çok karmaşık olduğu kadar basit de olabilir - her şey ne tür bir sonuç elde etmeniz gerektiğine bağlıdır. Makrolar için ana kriter güçlü ve aynı zamanda kolay kullanımlı olmalarıdır. LibreOffice makroları tam olarak bu gereksinimleri karşılar. Pratikte deneyelim.

Paketi kullanmak için LibreOfis,Önceden yüklenmiş bir işletim sistemi Linux, Windows veya MacOS'un yanı sıra LibreOffice paketinin kurulu olması gerekir (örneğin, bu konuda açıklandığı gibi ppa depolarından yükleyebilirsiniz)

makro yönetimi

Kendi makromuzu oluşturmaya başlamadan önce makro yönetim aracını tanımamız gerekiyor. yol boyunca gidiyoruz Araçlar - Makrolar - Makroları Düzenle - LibreOffice Basic Makroları(Araçlar - Makrolar - Makroları Yönet - LibreOffice Basic Makroları):

Pencerenin sol sütununda, kurulu varsayılan makroların bir listesini görebiliriz. Bunlardan herhangi birine tıklayarak düzenleyebilir veya silebilirsiniz.
Pencerenin ana görevi- ihtiyacınız olan makroyu seçin, ona araç çubuğunda bir düğme atayın veya bir olayla ilişkilendirin. Bir makroya bir düğme atamak, en sık kullandıklarınızı hızlı bir şekilde yürütmenize olanak tanır.

Otomatik modda (kayıt) bir makro oluşturmanın, bazen onu düzenlememiz gerektiğinden, makro yazma dili hakkında en azından biraz bilgi gerektirdiğini belirtmek isterim. Makronun nasıl göründüğünü görmek için ihtiyacımız olan makroyu seçin ve Düzenlemek(Düzenlemek). Aşağıda, kaynak kodunda makronun nasıl göründüğüne dair bir örnek verilmiştir:

Basit bir örnek verelim. Belgeye zaten eklenmiş bazı metinlerimiz var ve metnimiz iş yazışmalarında kullanılacağından bunun için bir başlık yapmamız gerekiyor.
Gelecekteki makromuz şunları yapabilmelidir:
- metni sayfanın üst ortasına yerleştirin;
- başlık olarak kullanılacak metni girin.
Bir makro oluşturduktan sonra ona araç çubuğunda bir buton atayacağız. Bundan sonra, başlığı belgeye eklemek için farenin bir tıklaması yeterli olacaktır.
Adım sırasını takip edelim.

Aşama 1.
Bir metin belgesi açın. Hadi devam edelim Araçlar - Makrolar - Makro Kaydet... Tek bir "Makroyu Bitir" düğmesiyle küçük bir "Makro Kaydet" penceresi görünecektir ( Kaydetmeyi bırak):

Adım 2.
Metin için bir başlık oluşturalım. butona tıklayalım "Merkez hizalama"("Ortalanmış"), böylece gelecekteki metnimiz tam olarak belgenin merkezinde olur. Şimdi başlığın metnini yazıyoruz. Makro bu tür eylemleri hatırlamadığından, bunun için farklı biçimler (yazı tipi veya kalın / italik / altı çizili) ayarlamamalısınız.

Aşama 3.
Başlık oluşturma işlemi tamamlandıktan sonra, "Makro Kaydet" penceresinde "Makroyu Bitir" düğmesine tıklayın. Makro Düzenleyici penceresi hemen görünecektir. Yeni makroya bir ad verin (örneğin PostHead). Artık istediğiniz yere kaydedebilirsiniz (örneğin, klasör " benim makrom").

Adım 4.
Şimdi sadece makro için araç çubuğuna bir düğme eklememiz gerekiyor Yazı Kafası... Bu süreç ilk bakışta göründüğü kadar basit değildir.
Açığız LibreOffice Temel Makroları, butona bas " Atamak"(" Ata "). Aşağıdaki pencere görünecektir Özelleştirme sekmesine gitmemiz gereken Araç çubukları ve "Araç Çubuğu" alanının "Standart" olduğundan emin olun ( standart) .

Bu pencerede "Ekle" düğmesini tıklayın ( Ekle). Başka bir pencere görünecektir - "Komut ekle" ( Komut ekle).
Sol pencerenin listesinde "Kategoriler" ( Kategori) bulduk " LibreOffice Makroları"(listenin en altında). Açın ve makromuza gidin. Bulduğumuz anda, son ve en basit adımı gerçekleştirmeye devam ediyor. Antetli makroyu fare ile araç çubuğundaki yere sürükleyin. onu görmek isteriz.
Her şey, görevle başa çıktı.
Şimdi tek yapmamız gereken düğmeyi kullanmak MesajKafası, panele ekledik. Örneğin, yeni bir belge açın ve düğmesine tıklayın. Yazı Kafası... Makromuz, tam olarak kendisine "atadığımız" metinle bir başlık oluşturacak ve onu belgenin en üstüne, tam ortasına yerleştirecektir.
uygun değil mi?

Sonuç
Tabii ki benim örneğimde çok basit bir makro oluşturduk. Ancak yukarıdaki araçlarla çok karmaşık makrolar da oluşturabilirsiniz. Ve sadece içinde değil yazar, aynı zamanda paketin diğer tüm uygulamalarında LibreOffice(Elektronik Tablo, Sunumlar, vb.). Artık makroları nasıl oluşturacağınızı bildiğinize göre, işinizi kolaylaştırmak için kolayca kendi makrolarınızı oluşturabilirsiniz.
Bu makalenin amacı, bir makro kayıt aracıyla çalışmanın temellerini öğrenmektir.

Bazen metinle çalışmanız veya metni karmaşık bir şekilde işlemeniz gerekir ve bunun için arayüzün sağladığı olağan araçlar yeterli değildir. Ek olarak, bazen çok zaman alan rutin eylemlerin aynı sırasını gerçekleştirmek gerekiyor, ancak bu eylemlerin sırasını tek bir tuşa basmak istiyorum. Writer, aslında bir programlama dilinde yazılmış metin işleme prosedürleri olan özel makrolar oluşturmanıza izin verir, bizim durumumuzda Temel dil bir programlama dili görevi görür. Aynı zamanda, üst düzey programlama dillerinde bulunan tüm standart operatörlerin bir kümesine sahip olarak, metin düzenleyici Writer'ın nesnelerine, açık belgelere, belgeleri açma işlevlerine, resimler, paragraflar dahil bu belgenin tüm nesnelerine erişmek mümkündür. , üstbilgiler ve altbilgiler, seçilen metin, listeler, kelimeler, harfler, yazı tipleri vb..

2.1. Nesneler ve Sınıflar.

Nesne nedir. Gerçek dünyanın bakış açısından, bir nesne, gerçek dünyada var olan ve özellikleri ve davranışı olan bir malzemedir, genellikle nesnelerin bazı ortak özellikleri vardır, bu sayede her nesneyi bir nesne sınıfına yönlendiririz. Örneğin - bir araba, arabaların farklı somut uygulamaları ve nesneleri vardır, ancak genel sınıf, dört tekerleği olan, sürebilen ve bir sürücü tarafından sürülen bir arabadır. Aynı şey metin veya belge için de söylenebilir, belge bir metin nesnesi içeren bir nesnedir ve bir metin nesnesi sözcükler, paragraflar, harfler içerir, metin düzenlenir, değiştirilir, görüntülenir, bir belge oluşturulur ve kaydedilir. Tüm bu işlemleri bu nesnelerle editörün fonksiyonlarını kullanarak gerçekleştiriyoruz ancak bu fonksiyonları algoritmik dili kullanarak çağırabiliyoruz.

Programlama dilleriyle zaten çalıştıysanız ve programlar yazdıysanız, herhangi bir programlama dilinde komut yazabileceğiniz bir dizi operatör veya talimat veya işlemcinin anlayabileceği ve yürütebileceği bir program olduğunu bilirsiniz. Herhangi bir karmaşıklıkta hemen hemen her algoritmayı yazabileceğiniz bir dizi standart operatör vardır - bu bir dal, bir döngü, doğrusal bir operatör yürütme dizisi, aritmetik işlemler ve değişkenlere erişme ve bazı değerler yazma yeteneği veya içlerindeki mantıksal veya aritmetik ifadelerin sonuçları. Genellikle yüksek seviyeli dillerde, makine dillerinde bulunan bellekle karmaşık çalışmadan kaçınmaya çalışırlar, belirli - değişken - sembolik bir diziye bir değer atanmasına izin veren standart bir atama işlemi sunulur. Kabaca söylemek gerekirse, ifadelerde bu karakter dizisini kullanarak, bir kutuda olduğu gibi bu değişkende bulunanlarla çalışırsınız. Atama işlemini şu şekilde tarif edebilirsiniz: - St1 isimli bir bardağa Cr1 kupasından süt döküyoruz ve Cr1'den St1'e bana süt dök diyoruz. Böylece, Cr1'de bulunanlarla dolup taşacaksınız. Değişken ile aynı. Val1 = 20 diyelim; Val2 = 30; Değer3 = Değer1 + Değer2; o zaman Val3 50 değerini içerecektir. Bir değişkenin yalnızca belirli bir türdeki verileri içerebileceğini ve bir satırdaki her şeyi içermediğini biliyorsunuz (bir değişkenin türü program yürütme sırasında belirlenebildiğinde özel bir değişken veri türü olmasına rağmen) . Sonuçta, isimleri (dizeleri) ve sayıları ve nesneleri saklayabiliriz. Bu nedenle, her değişkene bir tür veri türü veya alabileceği değerlerin etki alanı veya kapsamı atanır. Tipik olarak programlama dillerinde bunlar tamsayı türleri, gerçek, dize, karakter, boole, numaralandırılmış, küme, karmaşık sayılar, kayıt türü veya yapılardır. Değişken nesne nedir, karmaşık bir veri yapısı olan ve diğer şeylerin yanı sıra bu veri ve nesne ile çalışmak için yöntemler içerebilen, ayrıca verileri koruyan ve kısıtlayan veya izin veren bir nesneye bir tür referanstır. ona erişim.

Bir nesne değişkeni, bir nesne üzerinde gerçekleştirilen diğer nesneleri, özellikleri ve eylemleri içeren bir değişkendir, bir nesne, belirli bir sınıfın belirli bir uygulamasıdır (bir sınıf, aynı özelliklere sahip belirli bir nesne kümesinin açıklamasıdır). Tipik olarak, karmaşık veri türlerinin (sınıflar gibi) özelliklerine ve işlevlerine, bir nesne değişkeninin adının ardından o nesnenin işlevinin ve/veya özelliğinin adında bir nokta yazılarak erişilir.

2.2. Basic'te Değişkenler ve Nesneler

Bir değişken bildirmek için, dim anahtar sözcüğünü ve ardından virgülle ayrılmış bir değişkenler listesi, as sözcüğünü ve değişkenin türünü belirtin.

Dim a, b tamsayı olarak - tamsayı türünde bir değişkenin bildirimi. Dim s as string - string türündeki bir değişkenin bildirimi.

Dim mass () tamsayı olarak - dinamik tek boyutlu bir tamsayı türü dizisinin bildirimi. Redim mass (100) - dizinin uzunluğunu değiştirin ve 100 olarak ayarlayın.

com.sun.star.frame.Desktop olarak karartma masası, UNO birleşik ağ modelinin masaüstü tipinin bir değişkenidir, bu değişken Masaüstü tipindeki nesnelere atıfta bulunabilir.

Temel dilde, nesnelere referans olan değişkenlere erişebilirsiniz, bunlar metin nesneleri, paragraflar, pencere ekranında görüntülenen tablolar olabilir, bu nesnelerle çalışmak için bir dizi özellik ve yönteme sahiptirler. Nesne modeli herhangi biri olabilir ve uygulaması da olabilir, örneğin Microsoft Office paketinin kendi nesne modeli vardır, LibreOffice veya OpenOffice paketinin kendine ait vardır, bu nedenle bu farklı paketlerdeki nesneler ve bu nesnelerle etkileşim şekli farklıdır.

2.3. Temel Operatörler

Döngü operatörü için.

İndeks için = n1 - n2 Rem loop gövdesi

İndeks değişkeni n1'den n2'ye s artan (s ile artan) değerlerden geçer, bu durumda s bir tamsayı türünde bir değişken veya sabit olabilir, köşeli parantezler belirtilmemişse yapının isteğe bağlı olduğunu gösterir. o zaman adım 1'dir.

Örneğin değer = 0

xyz için = 4 ila 50 adım 4 val = val + xyz

Algoritma, 4'ten 50'ye kadar olan değerlerin toplamını 4'lük bir adımla hesaplar, yani 4, 8, 12, 16 ...

değişken val içine 48'e kadar. değer1 = 0

aval için = 1 ila 50 val1 = val1 + aval sonraki aval

Bu durumda, 1'den 50'ye kadar olan tam sayıların toplamı hesaplanır.

while döngüsü ifadesi, koşul karşılandığında yapın. Döngü içindeki ifadeler, koşul sağlandığı sürece tekrarlanır.

Süre<условие>Wend operatörleri

Örnek: Ben

Döngü, i değişkeni N'den küçük olduğu sürece yürütülür. Koşullu If ifadesi,

Eğer<условие>sonra

<последовательность операторов если условие выполняется>eğer son

Örnek: I 100'den küçükse (koşul karşılanırsa) I'yi 1 artırın, aksi takdirde 1 azaltın.

Eğer ben<100 then i=i+1

başka i = i-1 ise biter

2.4. Prosedürler ve fonksiyonlar.

Fonksiyonlar ve prosedürler, ana program veya alt programda çağrılabilen ayrı ifade bloklarıdır, genellikle bir programda adı ve kendisine geçirilen parametreler belirtilerek bir fonksiyon veya prosedür çağrılır, fonksiyon ifadelerinin yürütülmesinden sonra kontrol döndürülür kendisini çağıran programa veya alt programa geçer ve fonksiyon veya prosedürü takip eden ifadelerin yürütülmesi başlar. Açıkçası, prosedürlerin ve işlevlerin amacı, mantıksal olarak tamamlanmış belirli bir eylemi gerçekleştiren sık tekrarlanan işlemler için her seferinde aynı kodu yazmak değildir. Aynı zamanda, fonksiyonlar ve prosedürler içinde, diğer prosedür ve fonksiyonlarda ve ana programda değişkenlerle aynı isme sahip olabilen kendi yerel değişkenlerinizi kullanmanız mümkündür. Aynı zamanda, prosedürün dışından, fonksiyonun yerel değişkenlerini değiştiremeyiz. Prosedürlerin ve fonksiyonların tipik bir kullanımı, fonksiyona bazı değerleri iletmemizdir, bu fonksiyon temelinde bir dizi eylem gerçekleştirir ve bazı sonuçları hesaplar. Prosedürler ve işlevler arasındaki temel fark, işlev adının bir tür geri dönüş verisi ile ilişkilendirilmesidir, kabaca konuşursak, işlev, koşullu ifadelerde ve döngülerde, örneğin aritmetik veya mantıksal ifadelerde kullanılabilir. Prosedür herhangi bir ifadenin dışında çağrılır.

İşlev, harici bir programdan işleve gerçek parametreler olarak iletilen iki sayının toplamını döndürür

Fonksiyon toplamı (a, b tamsayı olarak) tamsayı olarak Toplam = a + b

Bir programda toplam işlevini kullanma. x'i tamsayı olarak karart

x = 2 x = x + toplam (x, 4) * 2

İki sayı eklemenize izin veren bir prosedür örneği, değer formal parametrede döndürülür, prosedür çağrılırken sabit olmamalı, tamsayı türünde bir değişken olmalıdır

Alt toplam (a, b, c tamsayı olarak)

Dim c tamsayı Çağrı toplamı (2,2, c)

2.5. LibreOffice'te Makro Oluşturma

LibreOffice'te bir makro oluşturmak için Servis + Makrolar + Makro Yönetimi + LibreOffice Basic (Araçlar + Makrolar + Makroları Düzenle) öğesini seçin. Bu, aşağıdaki şekilde gösterilen pencereyi gösterecektir (Şekil 19). Makronun belgenin kendisinde kaydedilebilmesi için belgenizi seçmeli, "standart" standart modül setini seçmelisiniz ve ardından "oluştur"a tıklamalısınız, ardından modülün adını girmelisiniz. Bir modül oluşturduktan sonra onu seçebilir, sağdaki pencerede Ana makroyu seçip Düzenle'ye tıklayabilirsiniz. Veya modülü (Modül1) oluşturduktan sonra Makro Adı alanına makro için yeni bir isim yazın ve oluştur'a tıklayın (Şekil 20).

Şekil 19 - Makro oluşturma ve düzenleme penceresi

Şekil 20 - Yeni bir makro oluşturma örneği MyMainMacros

Bir makro oluşturma ve düzenlemenin bir sonucu olarak, BASIC düzenleyici penceresi görünür, şekil iki makrolu bir örnek gösterir, elbette bunlardan daha fazlası olabilir ve giriş parametrelerine sahip olabilirler.

Şekil 21 - Temel düzenleyici ve iki makro

LibreOffice'de, daha önce belirtildiği gibi, nesne modeli Microsoft Office'tekinden biraz farklıdır, LibreOffice Basic'te UNO birleşik ağ nesne modeli olarak adlandırılan kullanılır. Aşağıda, her paragrafın yazı tipi boyutunu artıran bir openoffice makrosu örneği verilmiştir.

Dokümanı Nesne Olarak Karart

Nesne Olarak Dim Enum

Dim TextElement As Object

" StarDesktop - makrodan erişilebilen ana nesne

" bir numaralandırma nesnesi oluşturma

Numaralandırma = Doc.Text.createEnumeration

" Enum.hasMoreElements TextElement = Enum.nextElement iken tüm metin öğeleri arasında döngü

" mevcut bloğun bir tablo olup olmadığını kontrol etme

TextElement.supportsService ("com.sun.star.text.TextTable") ise

MsgBox "Geçerli blok bir tablo içeriyor"

Herhangi bir materyali iki biçimde yayınlarım - odt ve pdf... İkincisi dağıtım için uygundur. İhracat pdf"iletişim kutusu aracılığıyla standart LibreOffice araçlarıyla gerçekleştirilir. Dosya -> PDF'ye Aktar". Kılavuzun yeniden okunması ve içindeki hataların düzeltilmesi sürecinde, genellikle belgeyi yeniden kaydetmeniz gerekir. Ve belgeyi her seferinde manuel olarak dışa aktarmamak için, kaydederken bunun otomatik olarak gerçekleşmesinin iyi olacağını düşündüm. odf dosya. Ve bu durumda LibreOffice makro dili bilgisi kesinlikle gereksizdir.

Görev, makro kayıt işlevi kullanılarak çözülür. Varsayılan olarak mevcut değildir. Etkinleştirmek için " Araçlar -> Seçenekler" Bölümde " LibreOffice"Öğeyi seçin" Genişletilmiş yetenekler"Ve yanındaki kutuyu işaretleyin" Makro Kaydı Etkinleştir».

LibreOffice'i yeniden başlattıktan sonra " Araçlar → Makrolar"Eşya" Makro Kaydet».

"tıkladıktan sonra Araçlar -> Makrolar -> Makro Kaydet"Düğmeli bir pencere" Kaydı sonlandır».

Sonuç basit:

  1. Makro kaydını etkinleştir
  2. Kayıt devam ederken gerekli eylemi gerçekleştirin. Benim durumumda, PDF'ye dışa aktarma işlemini “ aracılığıyla gerçekleştirdim. Dosya -> PDF'ye Aktar»
  3. Tıkla " Kaydı sonlandır»
İşte bu, PDF makrosuna dışa aktarma kaydedildi, sadece kaydetmeniz gerekiyor.

Kolaylık sağlamak için bir modül oluşturdum “ Export_to_PDF" kütüphanede " Standart"Ve makromu bu modüle kaydettim.

Şimdi geriye kalan tek şey, makronun tetiklenmesini belirli bir olaya atamak. Bizim durumumuzda, belgeyi kaydetmek için. Biz gitmek " Servis -> Ayarlar"Şuna" Gelişmeler».

Dikkat! Makro, LibreOffice 4.4.3.2 ve Windows XP'de yazılmıştır.

LibreOffice Calc'ı başlatın. Araçlar -> Makrolar -> Makroları Yönet -> LibreOffice Basic'i seçin


Libre Office BASIC Makroları penceresinde, "Makro adı" alanına "Ana" yazın. "Makro kaynağı" alanında, "Makrolarım" - "Standart" öğesini seçin ve "Oluştur" düğmesini tıklayın. Şekil 1'e bakın.

Şekil 1. LibreOffice Basic Makroları Penceresi


Yeni modül penceresinde "Modül1" adını ayarlayın ve "Tamam" düğmesine basın. Şekil 2'ye bakın.

Şekil 2. Yeni bir modül oluşturma

Şekil 3. LibreOffice Basic Makro Düzenleyici

Ana prosedür Ana ile Module1 modülünü oluşturduk. Bir diyalog oluşturmak için LibreOffice Basic Makro Düzenleyici'de Araçlar -> Makrolar -> Diyalog Yönetimi ... menü öğesini seçin.

"Diyaloglar" sekmesini seçin. "Diyalog" bölümünde, "Diyaloglarım" -> "Standart" öğesini seçin ve "Oluştur" düğmesine basın. Şekil 4'e bakın.

Şekil 4. Bir makro iletişim kutusu oluşturma

Yeni İletişim penceresinde "Dialog1" adını ayarlayın ve "Tamam" düğmesine basın. Şekil 5'e bakın. Ardından LibreOffice Basic Makro Yönetimi penceresinin "Kapat" düğmesi.

Şekil 5. Yeni bir iletişim kutusu oluşturma

Ardından, LibreOffice Basic makro düzenleyici penceresinde, "Dialog1" adlı yeni oluşturulan iletişim kutusuna çift tıklayın, Şekil 6'da 1 numaraya bakın. Bundan sonra, görsel iletişim düzenleyicisi açılacak, Şekil 6'da 2 numaraya bakın.

Şekil 6. LibreOffice Temel İletişim Düzenleyicisi

Şimdi etiket adlı bir görsel öğeyi ve bir görsel öğe düğmesini iletişim kutumuza sürükleyin. Görseller, görseller panelinden sürüklenebilir, bkz. Şekil 6'da 3 numara.

Etiket görsel öğesini seçerseniz, bu öğe için bir dizi özellik açılır. Öğeyi bu özellikler aracılığıyla özelleştirebilirsiniz. lblNow öğesini adlandırın ve metni boş bırakın. Düğme elemanı için OKButton adını vereceğiz ve metin OK olacaktır. Şekil 7'deki 1,2,3 sayılarına bakın.

Şekil 7. LibreOffice Basic Dialog Editor'a görsel öğeler ekleme

Yukarıda yazdığım gibi, ana prosedürü Ana olan Module1 modülü oluşturuldu (bkz. Şekil 8), ancak henüz tamamlanmadı.

Şekil 8. Makronun kaynak kodunun eklenmesi


Ana prosedür, Dialog1 adlı bir iletişim kutusu yüklediğimiz ana prosedürdür, bunlar aşağıdaki kod satırlarıdır:

DialogLibraries.LoadLibrary ("Standart")
Dlg = CreateUnoDialog (DialogLibraries.Standard.Dialog1)

Geçerli tarih ve saatle bir dize oluşturuyoruz, bunlar aşağıdaki kod satırlarıdır:

Dim strNow As String
strNow = Biçim (Şimdi (), "yyyy-aa-gg")
strNow = strNow + Format (Zaman (), "ss: mm")

Görsel öğeye lblNow adında bir etiket, tarih ve saat içeren bir dize atarız, bunlar aşağıdaki kod satırlarıdır:

Dim clblNow As Object
clblNow = Dlg.getControl ("lblNow")
clblNow.Text = strNow

Ana prosedürdeki son kod satırı ile Dialog1 adlı bir iletişim kutusu çalıştırıyoruz:

Dlg.Execute ()

Bir prosedür daha var, adı OKButton_execute, bu bir olay prosedürü, OKButton adlı düğmeye basıldığı anda yürütülür ve Dialog1 adlı iletişim kutusunu kapatır, bu aşağıdaki kod satırıdır:

Dlg.endExecute ()

Şimdi OKButton_execute isimli prosedürü "Mouse Key Release" üzerinde bir event olarak OKButton isimli butona atayın. Bunu yapmak için, Dialog1 iletişim kutusunun görsel düzenleyicisini açın, Şekil 9'daki 1 numaraya bakın. OKButton adlı Düğmeyi seçin ve "Olaylar" sekmesine gidin, Şekil 9'daki 2 numaraya bakın. , üç noktalı düğmeye tıklayarak OKButton_execute adlı prosedürü belirtin, Şekil 9'daki 3 numaraya bakın.

Şekil 9. Tamam düğmesine olay atama

Makroyu çalıştırmak için gereken her şeyi yaptık. İlk olarak, makronun bizim için ne yaptığını görelim. Şekil 10'da 2 numara altında, görüntülenen geçerli tarih ve saat ile oluşturulan iletişim kutusunu görüyorsunuz. Tamam'ı tıklatırsanız, iletişim kutusu kapanır.

1. LibreOffice Basic makro düzenleyicisinden bir makro çalıştırın.Kodumuzu LibreOffice Basic makro düzenleyicisinde açın ve F5 tuşuna basarak veya makro çalıştırma düğmesine basarak çalıştırın, Şekil 10'da 1 numaraya bakın.

2. "Makro Seç" iletişim kutusundan bir makro çalıştırmak, Şekil 11'deki 1 numaraya bakın. İletişim kutusunda, makromuzu seçip "Çalıştır" düğmesine tıklamamız gerekiyor, Şekil 11'de 2 numaraya bakın.

Şekil 11. "Makro Seç" iletişim kutusundan bir makro çalıştırma

3. LibreOffice Calc veya LibreOffice Writer'daki menülerden ve alt menülerden bir makro çalıştırın, Şekil 12'de 0 numaraya bakın. Menüler ve alt menüler oluşturmak için "Araçlar" menü öğesini ve "Seçenekler" alt menüsünü seçin, Şekil'de 1 ve 2 numaralarına bakın 12. "Menü" sekmesindeki "Ayarlar" iletişim kutusunda, "Yeni ..." düğmesini tıklayın, menümüzün adını girin (örneğin, "Makrolar"), Şekil 12'deki 3 numaraya bakın. "Makrolar" menümüzün bir alt menüsünde "Ekle ..." ye tıklayın (bkz. şekil 12'deki 4 numara).

Şekil 12. LibreOffice Calc veya LibreOffice Writer'da menülerden ve alt menülerden bir makro çalıştırma

Ardından "Komut Ekle" diyalog kutusunda alt menümüz seçildiğinde yürütülecek komutu seçin (bkz. Şekil 13'te 1 ve 2 numaralar), yani. Main isimli makromuzu seçiyoruz.

Şekil 13. Alt menü için komut ekleme

"Menü" sekmesinin "Ayarlar" iletişim kutusunun "Değiştir" düğmesinin "Yeniden Adlandır ..." menü öğesini seçerek alt menümüzü yeniden adlandırın (Şekil 14'teki 1,2,3,4 sayılarına bakın). Alt menüyü "Tarih Penceresi Makrosu" olarak adlandırın.

Şekil 14. Bir alt menüyü yeniden adlandırma

4. Bir klavye kısayoluna basarak LibreOffice Calc veya LibreOffice Writer'da bir makro çalıştırmak. Bunu yapmak için "Ayarlar" iletişim kutusunu açın ve "Klavye" sekmesini seçin (Şekil 15'te 1 numaraya bakın). Ardından "Main" adlı makromuz olan komutu seçiyoruz (bkz. Şekil 15'te 2 numara). Ardından ücretsiz bir tuş kombinasyonu seçip komutumuza atadık, yani. Main adlı bir makro (Şekil 15'teki 3,4,5 sayılarına bakın).

Şekil 15. Makro çalıştırmak için kısayol tuşu atama

5. Araç çubuğundaki düğmeye tıklayarak LibreOffice Calc veya LibreOffice Writer'da bir makro çalıştırma (Şekil 16'da 4 numaraya bakın). Araç çubuğunda bir düğme oluşturmak için "Servis" menü öğesini ve "Ayarlar" alt menüsünü seçin, Şekil 16'daki 1 numaraya bakın. "Ayarlar" iletişim kutusunda, "Araç çubukları" sekmesinde "Yeni .. ." düğmesine tıklayın, araç çubuğumuzun adını girin (örneğin, "Makro paneli"), bkz. Şekil 16, 2 numara. Araç çubuğunda bir düğme oluşturmak için, "Ekle ..." düğmesini tıklayın (bkz. Şekil 3 numara) 16).

Şekil 16. Araç çubuğundan bir makro çalıştırma

Ardından, "Komut Ekle" iletişim kutusunda, araç çubuğumuzdaki düğmemize tıkladığınızda yürütülecek komutu seçin (Şekil 13'te 1 ve 2 numaralarına bakın), yani. Main isimli makromuzu seçiyoruz.

"Araç Çubukları" sekmesindeki "Seçenekler" iletişim kutusunun "Değiştir" düğmesinin "Yeniden Adlandır ..." menü öğesini seçerek araç çubuğumuzdaki düğmemizi yeniden adlandırın (Şekil 17'deki 1,2,3,4 sayılarına bakın) . Düğmeye "Tarih içeren makro penceresi" adını verin.

Şekil 17. Araç çubuğu düğmesini yeniden adlandırma