วันพุธที่ 19 กันยายน พ.ศ. 2561

VBA, MkDir, Dir, Kill, RmDir การสร้าง Folder และ การตรวสสอบค่า ใน Folder


VBA การสร้าง Folder และ การตรวสสอบค่า ใน Folder

Dim tmpFileName, pfile, FILEFOUND
 
    'MkDir (C:\EXPORT\SCSMG_20180510_CALLER)

    pfile = "C:\EXPORT\SCSMG_20180510_CALLER\*.*"
         
     FILEFOUND = Dir(pfile)
   
    If FILEFOUND = "" Then

       MsgBox "NULL"

    Else

       MsgBox FILEFOUND

    End If

--------------------------------------------------------------------------------------

Sub DeleteExample4()
'You can use this to delete the whole folder
'Note: RmDir delete only a empty folder
    On Error Resume Next
    Kill "C:\Users\Ron\Test\*.*"    ' delete all files in the folder
    RmDir "C:\Users\Ron\Test\"  ' delete folder
    On Error GoTo 0
End Sub
   

วันศุกร์ที่ 10 กรกฎาคม พ.ศ. 2558

การจำลอง table จาก table หลัก

การจำลอง table จาก table หลัก
ปรกติการ แสดงข้อมูลโดยการ  *  คือการแสดง columns ทั้งหมดใน Table

                 select *
                 from table_name
                 ;
ผมที่ได้
                 column_1 , colum_2 , column_3 , ...


แต่เมื่อ แสดงข้อมูลโดยการ  *  จากการสร้าง Table จำลอง

                select *
               from ( select column_1
, column_2
from table_name
 tab_table_name
                       ;
ผมที่ได้
                 column_1 , colum_2
     
       



วันอังคารที่ 7 กรกฎาคม พ.ศ. 2558

DECODE เป็นการเขียน เงื่อนไข บนชุดคำสั่ง select

 DECODE เป็นการเขียน เงื่อนไข บนคำสั่ง select ครับ เหมือน CASE  -WHEN -  THEN  - ELSE  - END
ถ้าเข้าเงื่อนไขที่กำหนด ให้กระทำอะไรก็เขียนไป
เช่น  ถ้าผมจะลองดูว่าถ้าจะเพิ่มเงินเดือน ให้แต่ละแผนก (jobid) เงินเดือนจะเพิ่มเป็นเท่าไหร่ โดยมีเงื่อนไขดังนี้
แผนก IT_PROG            เพิ่มอีก 10%
แผนก ST_CLERK         เพิ่มอีก 15%
แผนก SA_REP              เพิ่มอีก 20%
แผนก  อื่นๆ       ให้แสดง salary ปัจจุบันออกมา ไม่เพิ่มให้

SELECT      last_name
     ,               job_id, salary
     ,              DECODE(job_id, 'IT_PROG',  1.10*salary,
                                                  'ST_CLERK', 1.15*salary,
                                                  'SA_REP',   1.20*salary,
                                                  salary)  AS  UPDATE_SALARY
FROM   employees    ;

ถ้าใช้ตั้งแต่ version 9i เป็นต้นมา  สามารถใช้ CASE-WHEN-THEN-ELSE-END ได้เลยครับ