Excel - VBA - Emlékeztető létrehozása

Az Excel gyakran az adatfeldolgozás eszköze, jelentések és diagramok generálása különböző típusú adatokból. Ugyanakkor az Excel segítségével más érdekes dolgokat is használhat, mint például emlékeztető létrehozása . Ezt VBA keretrendszerrel lehet elvégezni. Emlékeztető létrehozásához egy egyedi VBA kódot kell írni, amely a beépített funkciók egy részét használja. A kódot azonban manuálisan kell futtatni első lépésben, és a következő iterációkra is folytatódik, amíg a munkafüzet nyitva van. Ha a felhasználó nem akarja manuálisan futtatni a kódot, meg kell határoznia a workbook_open nevű egyéni rutint.

Probléma

Az Excel munkalapon lévő dátum és idő szerint automatikusan emlékeztető üzenetet kapok.

Ez megtörténhet a VBA-ban?

Megoldás

 --- A -------------- B -------- C ---------------------- D 1- Dátum ------- Idő ------ Feladat ------------------- Remind 2-13/3/2010 - 11:10 ---- Tiszta szoba -------------- X 3-13/3/2010 - 11:10 ---- Tiszta autó ------------ ----- X 

X: jelzi, hogy ez aktív emlékeztető. Az emlékeztető letiltásához távolítsa el az x-et

A VBE (ALT + F11) és a projektfelderítő ablakban kattintson duplán a "ThisWorkbook" -ra. Illessze be az alábbi kódot.

 Private Const emlékeztető As Integer = 1 Privát emlékeztetőNext Változó Public Sub emlékeztetőMe () currentTime = Time nextMin = CDate (Formátum (Time + 1 / (24 * 60), "hh: mm")) myrows = Tartomány ("A1") .CurrentRegion.Rows.Count For thisrow = 2 A myrowokhoz Ha (Cells (thisrow, "D") = "X") Ezután thistime = CDate (CDate (sejtek (ez a ", " A ")) + sejtek (ez a" B ") ")) Ha ((thistime> = most) és (thistime <= most + 1 * emlékeztető / (24 * 60))) Ezután a feladat = feladat & vbCrLf & Cellák (ez a" C ") &" at "és" Formátum " (Cellák (ezután, "B"), "hh: mm") Vége Ha vége Ha a következő Ha (feladat) "Majd MsgBox feladat reminderNext = Most + TimeSerial (0, emlékeztető, 0) Alkalmazás.OnTime emlékeztetőNext, " ThisWorkbook. emlékeztetőMe ",, True End Sub 

Szintén meg kell értenie néhány dolgot:

  • A kódot először kézzel kell elindítani. Ezt követően, amíg bezárja a könyvet, az ellenőrzi a menetrendet a könyvben meghatározott módon.
  • Miután bezárta a könyvet és újraindította azt, újra kell indítania a kódot.
  • A kód elindításához makróra kell mennie, és ott talál egy futógombot a menüsorban.
  • Ha nem szeretné manuálisan futtatni a kódot, és azt szeretné, hogy a kód önállóan fusson a könyv indításakor, akkor meg kell adnia a Workbook_Open () nevű rutint.
  • Tehát ismét, ha manuálisan szeretné futtatni a kódot, akkor pontosan úgy, mint korábban, és ha azt szeretné, hogy a kód önállóan fusson, amikor a könyvet megnyitják, akkor még egyszer kell hozzáadni (a régi kódot mégis megőrzi) ). A kód:

 Privát Sub Workbook_Open () hívás emlékeztetőMe End Sub 

jegyzet

Köszönet a rizvisa1-nek a fórumon található tippért.

Előző Cikk Következő Cikk

Top Tippek