วิธีลบกิจกรรมทั้งหมดในหลายวันทั้งหมดพร้อมกัน แต่ไม่ใช่ทั้งปฏิทินใน Google ปฏิทิน


22

วิธีลบกิจกรรมทั้งหมดในหลายวันทั้งหมดพร้อมกัน แต่ไม่ใช่ปฏิทินทั้งหมดใน Google ปฏิทิน ฉันพยายามคลิกวันที่ที่มีกิจกรรมเพื่อลบและลากเมาส์ไปที่ 2 วันหลังจากวันที่ดังกล่าว แต่จากนั้นฉันก็มักจะเห็น "สร้างกิจกรรม" ฉันคิดว่าฉันสามารถกดbackspaceหรือdeleteลบกิจกรรมเหล่านั้นทั้งหมดได้

สิ่งที่ฉันทำไปแล้ว = การลบกิจกรรมทีละรายการ :(


ไม่มีอะไรในตัวที่จะให้คุณทำเช่นนี้ หากมี API สำหรับปฏิทินอาจเป็นไปได้ที่บางคนอาจสร้างแอพเพื่อทำสิ่งนี้ แต่ฉันไม่รู้อะไรเลย
เบียร์

คำตอบ:


25

ฉันสามารถทำสิ่งนี้กับ Google Script เช่นนี้ คุณสามารถแก้ไขสิ่งนี้เพื่อระบุวันที่คุณต้องการลบ ฯลฯ

function delete_events()
{
    var fromDate = new Date(2013,0,1,0,0,0); 
    var toDate = new Date(2013,0,4,0,0,0);
    var calendarName = 'My Calendar';

    // delete from Jan 1 to end of Jan 4, 2013 (for month 0 = Jan, 1 = Feb...)

    var calendar = CalendarApp.getCalendarsByName(calendarName)[0];
    var events = calendar.getEvents(fromDate, toDate);
    for(var i=0; i<events.length;i++){
      var ev = events[i];
      Logger.log(ev.getTitle()); // show event name in log
      ev.deleteEvent();
    }
 }

คุณเข้ามาอยู่ที่ไหน
justintime

4
สร้างสคริปต์ใหม่ที่Google Scriptsและวางลงในเปลี่ยนที่calendarNameอยู่อีเมล (GMail) ที่เชื่อมโยงกับปฏิทิน
Emaad Ahmed Manzoor

2
สำหรับตัวแปร calendarName ชื่อของฉันไม่ทำงานสำหรับปฏิทินหลักของฉันเว้นแต่ว่าฉันจะใช้ที่อยู่ Gmail แบบเต็มจริง เมื่อดูชื่อปฏิทินนี้ทางด้านซ้ายของ Google ปฏิทินของฉันมันเพิ่งปรากฏขึ้นเป็นชื่อและนามสกุลของฉัน แต่นั่นไม่ได้ทำงานกับตัวแปร calendarName ของฉัน สำหรับปฏิทินบัญชีย่อยของฉันชื่อปฏิทินที่แสดงที่ด้านซ้ายของปฏิทินทำงานได้ดี ฉันจะได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้เมื่อฉันใช้ชื่อปฏิทินผิดดังนั้นถ้าคุณเห็นข้อความ TypeError: ไม่สามารถเรียกวิธีการ "getEvents" ไม่ได้กำหนด
เคิร์ต

1
(ด้านบนถูกแก้ไขจากคำตอบกลายเป็นความคิดเห็นฉันคิดว่าข้อมูลนี้อาจเป็นประโยชน์ดังนั้นฉันจึงเก็บรักษาไว้)
jonsca

8

ฉันพบการดัดแปลงที่สามารถทำให้สคริปต์นี้มีค่าหากคุณต้องการค้นหาเหตุการณ์บางอย่าง ว่าคุณตั้งใจนำเข้าหรือไม่ ให้บอกว่ามีหลายรายการที่มีจุดตรวจสอบรอบที่ 1 10 ในชื่อตามด้วยหมายเลขหรืออะไรก็ตาม โปรดทราบว่าจะพบ "Cycle 1 Checkpoint 10", "Cycle 1 Checkpoint 20" แต่จะไม่พบ "Cycle1 Checkpoint 10"

function delete_events()
{
  //take care: Date function starts at 0 for the month (January=0)
  //{search: 'cycle'+"*"+'Checkpoint'} hier zijn de search terms
  var fromDate = new Date(2014,7,1,0,0,0); //This is August 1, 2014
  var toDate = new Date(2016,2,1,0,0,0);   //This is March 1, 2016 at 00h00'00"
  var calendarName = 'GuyForssman';


  var calendar = CalendarApp.getCalendarsByName(calendarName)[0];
  var events = calendar.getEvents(fromDate, toDate,{search: 'cycle'+"*"+Checkpoint'+"*"});
  for(var i=0; i<events.length;i++)
  {
    var ev = events[i];
      Logger.log('Item '+ev.getTitle()+' found on '+ev.getStartTime()); // show event name and date in log
      //ev.deleteEvent(); //uncomment this line to actually do the delete !
  }
}

สิ่งนี้จะขยายสคริปต์ด้านบน อนุญาตให้ฉันลบหลักสูตรตลอดทั้งปีในไม่กี่นาทีขอบคุณ
Daniel Filatov

3

หลังจากย้ายจากระบบปฏิทินก่อนหน้านี้ไปยัง Google Apps เหตุการณ์ที่เกิดขึ้นทั้งหมดจะถูกนำเข้าทีละรายการ ฉันสร้าง Google Script ใหม่ที่https://script.google.comและแก้ไขเพื่อลบเฉพาะบางเหตุการณ์ (มีเหตุการณ์ใหม่เกิดขึ้นแล้วด้วยชื่ออื่นแล้ว)

function delete_events()
{
  //take care: Date function starts at 0 for the month (January=0)
  var fromDate = new Date(2014,7,1,0,0,0); //This is August 1, 2014
  var toDate = new Date(2016,2,1,0,0,0);   //This is March 1, 2016 at 00h00'00"
  var calendarName = 'your_calendar_name';
  var toRemove = 'title_of_the_events';

  var calendar = CalendarApp.getCalendarsByName(calendarName)[0];
  var events = calendar.getEvents(fromDate, toDate,{search: toRemove});
  for(var i=0; i<events.length;i++)
  {
    var ev = events[i];
    if(ev.getTitle()==toRemove) //check if the title matches
    {
      Logger.log('Item '+ev.getTitle()+' found on '+ev.getStartTime()); // show event name and date in log
      //ev.deleteEvent(); //uncomment this line to actually do the delete !
    }
  }
}

2

สิ่งที่ดีที่สุดที่ฉันพบคือการใช้ฟังก์ชั่นการลบจำนวนมากจากแอพมือถือ Business Calendar Pro โดย Appgenixsoftware


2

มีลูกค้า API ฟรีที่http://www.gcaltoolkit.com มีรุ่นเครือข่ายที่ให้บริการฟรีสำหรับ 1,000 รายการและรุ่นที่สามารถดาวน์โหลดได้สำหรับ Windows และ Mac ที่อาจให้บริการฟรีเช่นกัน ฉันลองแล้วมันใช้งานได้อย่างรวดเร็วสำหรับฉัน

คุณสามารถเลือกตามวันที่หรือตามคำค้นหาและดูเหมือนว่าคุณสามารถแก้ไขด้วยตนเองได้อีก หรือเพียงแค่คลิกสิ่งที่คุณต้องการลบ หลังจากที่คุณตัดสินใจแล้วจะมีปุ่มสำหรับยืนยันการเปลี่ยนแปลงของคุณกลับสู่ Google ปฏิทิน

ฉันพบว่ามีประโยชน์มากเมื่อฉันมีปัญหาเดียวกันเมื่อไม่กี่นาทีที่ผ่านมาและรู้สึกประหลาดใจที่เห็นว่าไม่ได้อยู่ที่นี่


-2

หากคุณต้องการลบกิจกรรมทั้งหมดในปฏิทินคุณสามารถไปที่การตั้งค่าปฏิทินและลบทั้งปฏิทิน

หากเป็นปฏิทินหลักของคุณรายการนั้นจะลบรายการทั้งหมดและถ้าเป็นปฏิทินอื่นปฏิทินนั้นจะลบทั้งปฏิทินดังนั้นคุณจะต้องสร้างรายการใหม่


2
ไม่ใช่ปฏิทินทั้งหมด เพียง 3 วัน
Arie
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.