• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Excel'e Kod Eklemede Hata Yaşıyorum - Google Docs

Katılım
30 Aralık 2020
Mesajlar
61
Excel Vers. ve Dili
Google Docs ve Türkçe
Arkadaşlar merhaba, elimde Google Docs'un Excel kısmı için yapılmış bir program var ancak bunu kullanırken sorun yaşıyorum. Kod şöyle:

function onEdit(e) {
var sheet = SpreadsheetApp.getActive().getActiveSheet();
var xCol = sheet.getActiveRange().getColumn();
var xRow = sheet.getActiveRange().getRow();
if ( xCol == 2 && sheet.getName() =='Çeviri' ) {
var user = Session.getEffectiveUser().getUsername();
sheet.getRange(xRow, 7).setValue(user);
}
}

Kodun amacı ise, Çeviri ismindeki Excel sayfasında, ikinci sütundaki herhangi bir hücrede değişiklik olursa 7. sütuna değişikliği yapan kullanıcının kullanıcı adını yazmak. Bu programı "uzantılar>apps komut dosyası" kısmından projeye ekliyorum. Ancak sorun şu ki bu kod sadece proje sahibi değişiklik yaptığında çalışıyor. Yani Excel'e düzenleyen olarak birini davet ettiğinizde ve o kişi 2. sütundaki bir hücreyi değiştirdiğince program çalışmıyor. Sadece proje sahibi değişiklik yaparsa düzgün çalışıyor.

Bunu düzeltmenin bir yolu var mıdır? Düzenleyen rolüne sahip kişiler için de kodun düzgün çalışmasını sağlamaya çalışıyorum.
 
Ben o script'i hazırladığım sırada, beklendiği gibi çalışıyordu.....

Ama şimdi denediğimde, diğer editor'lerde aynı sorunu ben de yaşadım.

Sizin, diğer editor yetkisi verdikleriniz script'i görebiliyorlar mı ? Yani, script editöre erişebiliyorlar mı ? (Script'in yazılı olduğu yer...)

.
 
Az önce bir deneme daha yaptım..... Diğer editörün username veya email adresi yerine örneğin "Test" metnini yazdıracak mı diye denedim, sonuçta yazdı....

Demek ki, işin Google tarafında bir değişiklik olmuş...

.
 
Ben o script'i hazırladığım sırada, beklendiği gibi çalışıyordu.....

Ama şimdi denediğimde, diğer editor'lerde aynı sorunu ben de yaşadım.

Sizin, diğer editor yetkisi verdikleriniz script'i görebiliyorlar mı ? Yani, script editöre erişebiliyorlar mı ? (Script'in yazılı olduğu yer...)

.
Geç cevap için kusura bakmayın.
Göremiyorlar hocam. Hatta dökümanın sahibi de göremiyor. Sadece scripti dökümana ekleyen kişi scripti görebiliyor.

Az önce bir deneme daha yaptım..... Diğer editörün username veya email adresi yerine örneğin "Test" metnini yazdıracak mı diye denedim, sonuçta yazdı....

Demek ki, işin Google tarafında bir değişiklik olmuş...

.
Çözmenin yolu yok mudur peki? Size de çok soru yönelttim ama
 
Geç cevap için kusura bakmayın.
Göremiyorlar hocam. Hatta dökümanın sahibi de göremiyor. Sadece scripti dökümana ekleyen kişi scripti görebiliyor.


Çözmenin yolu yok mudur peki? Size de çok soru yönelttim ama

Sanırım Google getUser komutunu özel bilgileri aldığı için kaldırmış, kullanmak için dosyaya belli bir gizlilik politikası eklemek gerekiyormuş. Şu sayfa:

getUser kullanmadan bu programı çalıştırmanın bir yolu var mıdır?
 
Google yaptığı son değişiklikle; sadece aynı domain'e ait ise, editor yetkisine sahip diğer kişilerin e-mail adreslerinin onEdit, onOpen gibi prosedürlerde script ile alınmasına müsaade ediyor.

Bu durumda, yapacak birşey yok .... Sadece, script bir butona falan bağlanırsa o zaman kullanıcının e-mail adresini alabiliyorsunuz.

.
 
Google yaptığı son değişiklikle; sadece aynı domain'e ait ise, editor yetkisine sahip diğer kişilerin e-mail adreslerinin onEdit, onOpen gibi prosedürlerde script ile alınmasına müsaade ediyor.

Bu durumda, yapacak birşey yok .... Sadece, script bir butona falan bağlanırsa o zaman kullanıcının e-mail adresini alabiliyorsunuz.

.

Herkesi editör yapsak, öyle bir şansımız yok mu?
 
Google yaptığı son değişiklikle; sadece aynı domain'e ait ise, editor yetkisine sahip diğer kişilerin e-mail adreslerinin onEdit, onOpen gibi prosedürlerde script ile alınmasına müsaade ediyor.

Bu durumda, yapacak birşey yok .... Sadece, script bir butona falan bağlanırsa o zaman kullanıcının e-mail adresini alabiliyorsunuz.

Ya da dökümana katılan kullancılardan maillerini kullanacağımıza dair izin alsak?
 
Ben verdiğiniz linkteki script'i denedim, işe yaramıyor...... çünkü o da direkt olarak

JavaScript:
Session.getActiveUser()

kullanıyor....

Ama, eğer kullanıcıya sorup onayını aldıktan sonra devam etmek sizin için uygunsa bende başka bir fikir uyandırdı..... Biraz vakit alacak, müsait bir zamanda uğraşabilirim.

.
 
Ben verdiğiniz linkteki script'i denedim, işe yaramıyor...... çünkü o da direkt olarak

JavaScript:
Session.getActiveUser()

kullanıyor....

Ama, eğer kullanıcıya sorup onayını aldıktan sonra devam etmek sizin için uygunsa bende başka bir fikir uyandırdı..... Biraz vakit alacak, müsait bir zamanda uğraşabilirim.

.

Ben bekleyebilirim hocam, yeter ki hallolsun. Kolay gelsin size.
 
Linkteki dosyayı deneyin, bakalım olacak mı ?


.
 
Erişim isteği onaylandı...

.
 
Yenisi aşağıdaki linkte...


.
 
Bilemiyorum, benim yaptığım denemelerde sorun olmadı..... Sizden başkası da denemediği için birşey diyemeyeceğim......

.
 
Bilemiyorum, benim yaptığım denemelerde sorun olmadı..... Sizden başkası da denemediği için birşey diyemeyeceğim......

.

Sağ alt tarafta şöyle bir şey çıktı bu sefer.
5e9goty.png
 
Herşey yolunda gitseydi, orada sizin mail adresi çıkacaktı....

.
 
Geri
Üst