Automate Excel via VB

Cara membuat file excel melalui VB 6.0:

Private Sub Command1_Click()
    On Error GoTo errH
    Dim oExcel As Object
    Dim oWB As Object
    Dim oWS As Object
    Dim oRng As Object

    Set oExcel = CreateObject("Excel.Application")
    
    Set oWB = oExcel.Workbooks.Add
    Set oWS = oWB.Worksheets("Sheet1")
    Set oRng = oWS.Range("A1")
    oRng.Value = "Hello World"

    'oWS.Cells(1, 1).Value
    oWB.SaveAs ("c:\Hello World.xls")
    oWB.Close

    GoTo Cleanup
errH:
    If Err.Number = 9 Then 'jika error pada pembukaan worksheet
        MsgBox "Tidak dapat membuka worksheet, mungkin nama worksheet salah", vbCritical, "Error"
    Else
        MsgBox Err.Description, vbCritical, "Error"
    End If
Cleanup:
    Set oWS = Nothing
    On Error Resume Next
    If Not oWB Is Nothing Then oWB.Close
    Set oWB = Nothing
    oExcel.Quit
    Set oExcel = Nothing
    On Error GoTo 0
End Sub

Iklan

jQuery Styling Alternate Rows

Membuat tampilan table menjadi alternate row berikut cara nya:
Misalkan ada file html:

<table>
  <tr>
    <td>As You Like It</td>
    <td>Comedy</td>
    <td></td>
  </tr>
  <tr>
    <td>All's Well that Ends Well</td>
    <td>Comedy</td>
    <td>1601</td>
  </tr>
  <tr>
    <td>Hamlet</td>
    <td>Tragedy</td>
    <td>1604</td>
  </tr>
  <tr>
    <td>Macbeth</td>
    <td>Tragedy</td>
    <td>1606</td>
  </tr>
  <tr>
    <td>Romeo and Juliet</td>
    <td>Tragedy</td>
    <td>1595</td>
  </tr>
  <tr>
    <td>Henry IV, Part I</td>
    <td>History</td>
    <td>1596</td>
  </tr>
  <tr>
    <td>Henry V</td>
    <td>History</td>
    <td>1599</td>
  </tr>
</table>

file css:

tr {
  background-color: #fff; 
}
.alt {
  background-color: #ccc; 
}

file js:

$(document).ready(function() {
  $('tr:odd').addClass('alt');
});

tampilan:

jQuery

Spring Framework 2

Melanjutkan pembahasan yang lalu, untuk class-class yang digunakan pada tutorial kali ini sama dengan tutorial sebelumnya, hanya saja disini akan ada sedikit perubahan dan penambahan file yaitu pada implementasi Class dalam hal ini kita tambah satu file lagi yaitu: CalculateSpring.java

package com.arulsoft.springtutorial;  

import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.FileSystemResource;

public class CalculateSpring {

    private Operation ops;
    private ResultWriter wtr;

    public void setOps(Operation ops) {
        this.ops = ops;
    }

    public void setWriter(ResultWriter writer) {
        this.wtr = writer;
    }

    public static void main(String[] args) {
        BeanFactory factory = new XmlBeanFactory(new FileSystemResource("beans.xml"));
        CalculateSpring calc = (CalculateSpring) factory.getBean("opsbean");
        calc.execute(args);
    }

    public void execute(String[] args) {
        long op1 = Long.parseLong(args[0]);
        long op2 = Long.parseLong(args[1]);
        wtr.showResult("The result of " + op1 + ops.getOpsName() + op2 + " is " + ops.operate(op1, op2) + "!");
    }
}

Kemudian kita buat file xml configurasi untuk spring framework:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">

    <bean id="screen" class="com.arulsoft.springtutorial.ScreenWriter" />
    <bean id="multiply" class="com.arulsoft.springtutorial.OpMultiply" />
    <bean id="add" class="com.arulsoft.springtutorial.OpAdd" />
    <bean id="opsbean" class="com.arulsoft.springtutorial.CalculateSpring">
        <property name="ops" ref="multiply" />
        <property name="writer" ref="screen"/>
    </bean>
</beans>

Nah selesai deh, tinggal di-running, oh iya jangan lupa menambahkan library spring frameworknya. Sementara ini dulu untuk kelanjutannya tunggu postingan berikutnya…. 😀

Spring Framework Tutorial

bagi yang ingin belajar spring framework, ni ada situs yang sangat membantu untuk pemula seperti saya, http://www.javapassion.com/handsonlabs/springhelloworld/, disitu dicontohkan bagaimana membuat program helloworld sederhana yang dimodifikasi sedemikian rupa sehingga dapat disesuaikan dengan kebutuhan. Penjelasan rincinya ada disini.

Spring Framework Tutorial 1

Tutorial berikut adalah hasil dari belajar Spring Framework pada buku Beginning Spring Framework 2
Beginning Spring Framework 2

Konsep dari spring framework adalah bagaimana membuat aplikasi dalam bentuk komponen yang dapat disusun menjadi aplikasi yang utuh. Proses ini disebut sebagai wiring. Hal ini dapat dianalogikan seperti komponen alat listrik. Baca lebih lanjut

Disable Pop Up menu From Textbox

A common Frequently Asked Question is how to disable the popup menu of a TextBox. Since VB5 was released it’s possible to use the AdressOf keyword to add a Hook and a callback function. Just add this code to a .BAS module and call the Hook sub and pass the hWnd of a textbox as an argument. You must call the UnHook sub before you unload the form or you might get a General Protection

pertanyaan yang sering ditanyakan adalah bagaimana men-disable menu popup yang ada pada Textbox, berikut ini adalah contoh program kecil untuk men-disable menu popup tersebut:

buat kode berikut pada deklarasi modul:

Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" _
    (ByVal lpPrevWndFunc As Long, _
    ByVal hWnd As Long, _
    ByVal Msg As Long, _
    ByVal wParam As Long, _
    ByVal lParam As Long) As Long

Declare Function SetWindowLong Lib "user32" _
    Alias "SetWindowLongA" _
    (ByVal hWnd As Long, _
    ByVal nIndex As Long, _
    ByVal dwNewLong As Long) As Long

Public Const GWL_WNDPROC = -4
Public Const WM_RBUTTONUP = &H205
Public lpPrevWndProc As Long
Private lngHWnd As Long

Buat kode berikut pada modul:

Public Sub Hook(hWnd As Long)
    lngHWnd = hWnd
    lpPrevWndProc = SetWindowLong(lngHWnd, GWL_WNDPROC, _
    AddressOf WindowProc)
End Sub

Public Sub UnHook()
    Dim lngReturnValue As Long
    lngReturnValue = SetWindowLong(lngHWnd, GWL_WNDPROC, lpPrevWndProc)
End Sub

Function WindowProc(ByVal hw As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
    Select Case uMsg
        Case WM_RBUTTONUP
            'Do nothing
            'Or popup you own menu
        Case Else
            WindowProc = CallWindowProc(lpPrevWndProc, hw, uMsg, wParam, lParam)
    End Select
End Function

Buat kode berikut, letakkan pada event Form_Load() dimana Textbox berada:

Call Hook(Text1.hWnd)