VBA ¤È Java ¤Î¥ª¥Ö¥¸¥§¥¯¥È»Ø¸þ¥×¥í¥°¥é¥ß¥ó¥°

Top > Excel VBA ¤Ç¥Ç¥¶¥¤¥ó¥Ñ¥¿¡¼¥ó > TemplateMethod¥Ñ¥¿¡¼¥ó

TemplateMethod¥Ñ¥¿¡¼¥ó


TemplateMethod¥Ñ¥¿¡¼¥ó¤Î¥µ¥ó¥×¥ë¥×¥í¥°¥é¥à¤òExcelVBA¤Çµ­½Ò¤¹¤ë¤È°Ê²¼¤Î
¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£¥â¥¸¥å¡¼¥ë¤´¤È¤Ë¥×¥í¥°¥é¥à¤ò¼¨¤·¤Þ¤¹¡£

ɸ½à¥â¥¸¥å¡¼¥ë¡§modCObject
'=================================================>>>>>>>>>>
'ɸ½à¥â¥¸¥å¡¼¥ë¡§modCObject
'===========================================================
Option Explicit

'¥³¥ó¥¹¥È¥é¥¯¥¿
Public Function Init2(pobjConcrete As clsCObject _
) As clsCObject
    Dim objResult As clsCObject
    Set objResult = New clsCObject
    'Ãê¾Ý¥á¥½¥Ã¥É¤Î¼ÂºÝ¤Î½èÍý¤¬µ­½Ò¤µ¤ì¤Æ¤¤¤ë
    '¥µ¥Ö¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤ò°ú¿ô¤ÇÅϤ¹¡£
    Call objResult.Init2(pobjConcrete)
    Set Init2 = objResult
End Function
'<<<<<<<<<<=================================================
¥¯¥é¥¹¥â¥¸¥å¡¼¥ë¡§clsCObject
'=================================================>>>>>>>>>>
'¥¯¥é¥¹¥â¥¸¥å¡¼¥ë¡§clsCObject
'===========================================================
'Ãê¾Ý¥á¥½¥Ã¥É¤Î¼ÂºÝ¤Î½èÍý¤¬µ­½Ò¤µ¤ì¤Æ¤¤¤ë
'¥µ¥Ö¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤ò¼èÆÀ¤¹¤ë¤¿¤á¤Ë
'»ÈÍѤ¹¤ë¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¡£
Option Explicit
'Ãê¾Ý¥á¥½¥Ã¥É¤Î¼ÂºÝ¤Î½èÍý¤¬µ­½Ò¤µ¤ì¤Æ¤¤¤ë
'¥µ¥Ö¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¡£
Private mobjConcrete As clsCObject

'¥³¥ó¥¹¥È¥é¥¯¥¿
'Ãê¾Ý¥á¥½¥Ã¥É¤Î¼ÂºÝ¤Î½èÍý¤¬µ­½Ò¤µ¤ì¤Æ¤¤¤ë
'¥µ¥Ö¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤ò°ú¿ô¤Ç¼õ¤±¼è¤ë¡£
Public Sub Init2(pobjConcrete As clsCObject)
    Set mobjConcrete = pobjConcrete
End Sub

'Ãê¾Ý¥á¥½¥Ã¥É¤Î¼ÂºÝ¤Î½èÍý¤¬µ­½Ò¤µ¤ì¤Æ¤¤¤ë
'¥µ¥Ö¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤Î¼èÆÀ½èÍý¡£
Public Property Get Concrete() As clsCObject
    Set Concrete = mobjConcrete
End Property
'<<<<<<<<<<=================================================
ɸ½à¥â¥¸¥å¡¼¥ë¡§modCAbstractDisplay
'=================================================>>>>>>>>>>
'ɸ½à¥â¥¸¥å¡¼¥ë¡§modCAbstractDisplay
'===========================================================
Option Explicit

'¥³¥ó¥¹¥È¥é¥¯¥¿
Public Function Init2(pobjConcrete As clsCObject _
) As clsCAbstractDisplay
    Dim objResult As clsCAbstractDisplay
    Set objResult = New clsCAbstractDisplay
    'Ãê¾Ý¥á¥½¥Ã¥É¤Î¼ÂºÝ¤Î½èÍý¤¬µ­½Ò¤µ¤ì¤Æ¤¤¤ë
    '¥µ¥Ö¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤ò°ú¿ô¤ÇÅϤ¹¡£
    Call objResult.Init2(pobjConcrete)
    Set Init2 = objResult
End Function
'<<<<<<<<<<=================================================
¥¯¥é¥¹¥â¥¸¥å¡¼¥ë¡§clsCAbstractDisplay
'=================================================>>>>>>>>>>
'¥¯¥é¥¹¥â¥¸¥å¡¼¥ë¡§clsCAbstractDisplay
'===========================================================
Option Explicit
'¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¾ðÊó
Implements clsCObject
Private mobjSuper As clsCObject
'¥³¥ó¥¹¥È¥é¥¯¥¿
Public Sub Init2(pobjConcrete As clsCObject)
    '¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Î¥³¥ó¥¹¥È¥é¥¯¥¿¤ò¸Æ¤Ó½Ð¤¹¡£
    'Ãê¾Ý¥á¥½¥Ã¥É¤Î¼ÂºÝ¤Î½èÍý¤¬µ­½Ò¤µ¤ì¤Æ¤¤¤ë
    '¥µ¥Ö¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤ò°ú¿ô¤ÇÅϤ¹¡£
    Set mobjSuper = modCObject.Init2(pobjConcrete)
End Sub

'Concrete¥×¥í¥Ñ¥Æ¥£¤Ï·Ñ¾µ¤ò¼Â¸½¤¹¤ë
'ÆâÉô½èÍýÍѤΥץí¥Ñ¥Æ¥£¤Ç¤¢¤ê
'¥¯¥é¥¹¤ÎÍøÍѼԤ˸«¤»¤ëɬÍפ¬¤Ê¤¤¤¿¤á
'·Ñ¾µ¤·¤Æ¤¤¤ë¤è¤¦¤Ë¸«¤»¤«¤±¤ë
'Public¥×¥í¥·¡¼¥¸¥ã¤ÏÄêµÁ¤·¤Ê¤¤¡£

'¥µ¥Ö¥¯¥é¥¹¤Ë¼ÂÁõ¤ò¤Þ¤«¤»¤ëÃê¾Ý¥á¥½¥Ã¥É(1)
'¡ÖOpen¡×¤ÏVBA¤ÎͽÌó¸ì¤Ç¥×¥í¥·¡¼¥¸¥ã̾¤Ë»È¤¨¤Ê¤¤¤Î¤Ç
'¡ÖOpenDisp¡×¤Ë¤¹¤ë¡£
Public Sub OpenDisp()
'
End Sub

'¥µ¥Ö¥¯¥é¥¹¤Ë¼ÂÁõ¤ò¤Þ¤«¤»¤ëÃê¾Ý¥á¥½¥Ã¥É(2)
'¡ÖPrint¡×¤ÏVBA¤ÎͽÌó¸ì¤Ç¥×¥í¥·¡¼¥¸¥ã̾¤Ë»È¤¨¤Ê¤¤¤Î¤Ç
'¡ÖPrintDisp¡×¤Ë¤¹¤ë¡£
Public Sub PrintDisp()
'
End Sub

'¥µ¥Ö¥¯¥é¥¹¤Ë¼ÂÁõ¤ò¤Þ¤«¤»¤ëÃê¾Ý¥á¥½¥Ã¥É(3)
'¡ÖClose¡×¤ÏVBA¤ÎͽÌó¸ì¤Ç¥×¥í¥·¡¼¥¸¥ã̾¤Ë»È¤¨¤Ê¤¤¤Î¤Ç
'¡ÖCloseDisp¡×¤Ë¤¹¤ë¡£
Public Sub CloseDisp()
'
End Sub

'¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤«¤éÃê¾Ý¥á¥½¥Ã¥É¤Î¼ÂºÝ¤Î½èÍý¤¬
'µ­½Ò¤µ¤ì¤Æ¤¤¤ë¥µ¥Ö¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤ò¼èÆÀ¤¹¤ë¡£
Public Sub Display()
    'Ãê¾Ý¥á¥½¥Ã¥É¤Î¼ÂºÝ¤Î½èÍý¤¬µ­½Ò¤µ¤ì¤Æ¤¤¤ë
    '¥µ¥Ö¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤òÀßÄꤹ¤ëÊÑ¿ô¡£
    '¥Ç¡¼¥¿·¿¤Ï¼«Ê¬¼«¿È¤Ë¤¹¤ë¡£
    Dim objConcrete As clsCAbstractDisplay
    Dim lngCnt As Long
    Set objConcrete = clsCObject_Concrete
    '¤Þ¤ºOpen¤·¤Æ¡Ä
    Call objConcrete.OpenDisp
    '5²óPrint¤ò·«¤êÊÖ¤·¤Æ¡Ä
    For lngCnt = 1 To 5
        Call objConcrete.PrintDisp
    Next lngCnt
    '¡ÄºÇ¸å¤ËClose¤¹¤ë¡£
    Call objConcrete.CloseDisp
End Sub

'-----------------------------------------------------------
' clsCObject ¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹
'-----------------------------------------------------------
Private Sub clsCObject_Init2(pobjConcrete As clsCObject)
    '²¿¤â¤·¤Ê¤¤
End Sub

Private Property Get clsCObject_Concrete() As clsCObject
    Set clsCObject_Concrete = mobjSuper.Concrete
End Property
'<<<<<<<<<<=================================================
ɸ½à¥â¥¸¥å¡¼¥ë¡§modCCharDisplay
'=================================================>>>>>>>>>>
'ɸ½à¥â¥¸¥å¡¼¥ë¡§modCCharDisplay
'===========================================================
Option Explicit

'¥³¥ó¥¹¥È¥é¥¯¥¿£²
Public Function Init2(pstrCh As String) As clsCCharDisplay
    Dim objResult As clsCCharDisplay
    Set objResult = New clsCCharDisplay
    Call objResult.Init2(pstrCh)
    Set Init2 = objResult
End Function
'<<<<<<<<<<=================================================
¥¯¥é¥¹¥â¥¸¥å¡¼¥ë¡§clsCCharDisplay
'=================================================>>>>>>>>>>
'¥¯¥é¥¹¥â¥¸¥å¡¼¥ë¡§clsCCharDisplay
'===========================================================
Option Explicit
'¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¾ðÊó
'clsCCharDisplay ¤Ï¡¢clsCAbstractDisplay ¤Î¥µ¥Ö¥¯¥é¥¹¡£
Implements clsCObject
Implements clsCAbstractDisplay
Private mobjSuper As clsCAbstractDisplay
'¥×¥í¥Ñ¥Æ¥£¾ðÊó
'ɽ¼¨¤¹¤Ù¤­Ê¸»ú
Private mstrCh As String

'¥³¥ó¥¹¥È¥é¥¯¥¿
Public Function Init2(pstrCh As String) As clsCCharDisplay
    '¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Î¥³¥ó¥¹¥È¥é¥¯¥¿¤Î¸Æ¤Ó½Ð¤·
    'Ãê¾Ý¥á¥½¥Ã¥É¤Î¼ÂºÝ¤Î½èÍý¤¬µ­½Ò¤µ¤ì¤Æ¤¤¤ë
    '¥µ¥Ö¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤ò°ú¿ô¤ÇÅϤ¹¡£
    Set mobjSuper = modCAbstractDisplay.Init2(Me)
    '¥³¥ó¥¹¥È¥é¥¯¥¿¤ÇÅϤµ¤ì¤¿Ê¸»ú pstrCh ¤ò¡¢
    '¥×¥í¥Ñ¥Æ¥£¤Ëµ­²±¤·¤Æ¤ª¤¯¡£
    'VBA ¤Ë char ·¿¤Ï¤Ê¤¤¤Î¤Ç¡¢String ·¿¤Î¥Ç¡¼¥¿¤Î
    'ÀèƬ£±Ê¸»ú¤ò¼è¤ê½Ð¤¹¡£
    mstrCh = Left(pstrCh, 1)
End Function

'Concrete¥×¥í¥Ñ¥Æ¥£¤Ï·Ñ¾µ¤ò¼Â¸½¤¹¤ë
'ÆâÉô½èÍýÍѤΥץí¥Ñ¥Æ¥£¤Ç¤¢¤ê
'¥¯¥é¥¹¤ÎÍøÍѼԤ˸«¤»¤ëɬÍפ¬¤Ê¤¤¤¿¤á
'·Ñ¾µ¤·¤Æ¤¤¤ë¤è¤¦¤Ë¸«¤»¤«¤±¤ë
'Public¥×¥í¥·¡¼¥¸¥ã¤ÏÄêµÁ¤·¤Ê¤¤¡£

'-----------------------------------------------------------
'clsCAbstractDisplay ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¥á¥½¥Ã¥É¤ò
'clsCCharDisplay ·¿¤ÎÊÑ¿ô¤«¤é¤â¸Æ¤Ó½Ð¤»¤ë¤è¤¦¤Ë¤¹¤ë¡£
'-----------------------------------------------------------
'¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Ç¤ÏÃê¾Ý¥á¥½¥Ã¥É¤À¤Ã¤¿¡£
'¤³¤³¤Ç¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤Æ¼ÂÁõ¡£
'³«»Ïʸ»úÎó¤È¤·¤Æ"<<"¤òɽ¼¨¤¹¤ë¡£
Public Sub OpenDisp()
    Debug.Print "<<";
End Sub

'print ¥á¥½¥Ã¥É¤â¤³¤³¤Ç¼ÂÁõ¤¹¤ë¡£¤³¤ì¤¬ display ¤«¤é·«¤êÊÖ¤·¤Æ¸Æ¤Ó½Ð¤µ¤ì¤ë¡£
'¥×¥í¥Ñ¥Æ¥£¤Ëµ­²±¤·¤Æ¤ª¤¤¤¿Ê¸»ú¤ò1¸Äɽ¼¨¤¹¤ë¡£
Public Sub PrintDisp()
    Debug.Print mstrCh;
End Sub

'close ¥á¥½¥Ã¥É¤â¤³¤³¤Ç¼ÂÁõ¡£
'½ªÎ»Ê¸»úÎó">>"¤òɽ¼¨¡£
Public Sub CloseDisp()
    Debug.Print ">>"
End Sub

Public Sub Display()
    Call mobjSuper.Display
End Sub

'-----------------------------------------------------------
' clsCAbstractDisplay ¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹
'-----------------------------------------------------------
Private Sub clsCAbstractDisplay_Init2( _
pobjConcrete As clsCObject)
    '²¿¤â¤·¤Ê¤¤
End Sub

Private Sub clsCAbstractDisplay_OpenDisp()
    Call Me.OpenDisp
End Sub

Private Sub clsCAbstractDisplay_PrintDisp()
    Call Me.PrintDisp
End Sub

Private Sub clsCAbstractDisplay_CloseDisp()
    Call Me.CloseDisp
End Sub

Private Sub clsCAbstractDisplay_Display()
    Call Me.Display
End Sub

'-----------------------------------------------------------
' clsCObject ¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹
'-----------------------------------------------------------
Private Sub clsCObject_Init2(pobjConcrete As clsCObject)
    '²¿¤â¤·¤Ê¤¤
End Sub

Private Property Get clsCObject_Concrete() As clsCObject
    Dim obj As clsCObject
    Set obj = mobjSuper
    Set clsCObject_Concrete = obj.Concrete
End Property
'<<<<<<<<<<=================================================
ɸ½à¥â¥¸¥å¡¼¥ë¡§modCStringDisplay
'=================================================>>>>>>>>>>
'ɸ½à¥â¥¸¥å¡¼¥ë¡§modCStringDisplay
'===========================================================
Option Explicit
'¥³¥ó¥¹¥È¥é¥¯¥¿£²
Public Function Init2(pstrValue As String _
) As clsCStringDisplay
    Dim objResult As clsCStringDisplay
    Set objResult = New clsCStringDisplay
    objResult.Init2 pstrValue
    Set Init2 = objResult
End Function
'<<<<<<<<<<=================================================
¥¯¥é¥¹¥â¥¸¥å¡¼¥ë¡§clsCStringDisplay
'=================================================>>>>>>>>>>
'¥¯¥é¥¹¥â¥¸¥å¡¼¥ë¡§clsCStringDisplay
'===========================================================
Option Explicit
'¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Î¾ðÊó
'StringDisplay¤â¡¢AbstractDisplay¤Î¥µ¥Ö¥¯¥é¥¹¡£
Implements clsCObject
Implements clsCAbstractDisplay
Private mobjSuper As clsCAbstractDisplay
'¥×¥í¥Ñ¥Æ¥£¾ðÊó
'ɽ¼¨¤¹¤ë¤Ù¤­Ê¸»úÎó¡£
Private mstrValue As String
'¥Ð¥¤¥Èñ°Ì¤Ç·×»»¤·¤¿Ê¸»úÎó¤Î¡ÖÉý¡×¡£
Private mlngWidth As Long

'¥³¥ó¥¹¥È¥é¥¯¥¿
Public Function Init2(pstrValue As String _
) As clsCStringDisplay
    '¥¹¡¼¥Ñ¡¼¥¯¥é¥¹¤Î¥³¥ó¥¹¥È¥é¥¯¥¿¤Î¸Æ¤Ó½Ð¤·¡£
    'Ãê¾Ý¥á¥½¥Ã¥É¤Î¼ÂºÝ¤Î½èÍý¤¬µ­½Ò¤µ¤ì¤Æ¤¤¤ë
    '¥µ¥Ö¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤ò°ú¿ô¤ÇÅϤ¹¡£
    Set mobjSuper = modCAbstractDisplay.Init2(Me)
    '¥³¥ó¥¹¥È¥é¥¯¥¿¤ÇÅϤµ¤ì¤¿Ê¸»ú pstrValue ¤ò¡¢
    '¥×¥í¥Ñ¥Æ¥£¤Ëµ­²±¡£
    mstrValue = pstrValue
    '¤½¤ì¤«¤é¥Ð¥¤¥Èñ°Ì¤ÎÉý¤â¥Õ¥£¡¼¥ë¥É¤Ë
    'µ­²±¤·¤Æ¤ª¤¤¤Æ¡¢¸å¤Ç»È¤¦¡£
    mlngWidth = LenB(StrConv(mstrValue, vbFromUnicode))
End Function

'Concrete¥×¥í¥Ñ¥Æ¥£¤Ï·Ñ¾µ¤ò¼Â¸½¤¹¤ë
'ÆâÉô½èÍýÍѤΥץí¥Ñ¥Æ¥£¤Ç¤¢¤ê
'¥¯¥é¥¹¤ÎÍøÍѼԤ˸«¤»¤ëɬÍפ¬¤Ê¤¤¤¿¤á
'·Ñ¾µ¤·¤Æ¤¤¤ë¤è¤¦¤Ë¸«¤»¤«¤±¤ë
'Public¥×¥í¥·¡¼¥¸¥ã¤ÏÄêµÁ¤·¤Ê¤¤¡£

'-----------------------------------------------------------
'clsCAbstractDisplay ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¥á¥½¥Ã¥É¤ò
'clsCStringDisplay ·¿¤ÎÊÑ¿ô¤«¤é¤â¸Æ¤Ó½Ð¤»¤ë¤è¤¦¤Ë¤¹¤ë¡£
'-----------------------------------------------------------
'¥ª¡¼¥Ð¡¼¥é¥¤¥É¤·¤ÆÄêµÁ¤¹¤ë openDisp ¥á¥½¥Ã¥É¡£
'¤³¤Î¥¯¥é¥¹¤Î¥á¥½¥Ã¥É printLine ¤ÇÀþ¤ò°ú¤¤¤Æ¤¤¤ë¡£
Public Sub OpenDisp()
    Call PrintLine
End Sub

'printDisp ¥á¥½¥Ã¥É¤Ï¡¢¥×¥í¥Ñ¥Æ¥£¤Ëµ­²±¤·¤Æ¤ª¤¤¤¿Ê¸»úÎó
'¤ÎÁ°¸å¤Ë"|"¤ò¤Ä¤±¤Æɽ¼¨¡£
Public Sub PrintDisp()
    Debug.Print "|" & mstrValue & "|"
End Sub

'closeDsip¥á¥½¥Ã¥É¤Ï¡¢open¤ÈƱ¤¸¤¯printLine¥á¥½¥Ã¥É¤Ç
'Àþ¤ò°ú¤¤¤Æ¤¤¤ëŽ¡
Public Sub CloseDisp()
    Call PrintLine
End Sub

Public Sub Display()
    mobjSuper.Display
End Sub

'OpenDisp ¤È CloseDisp ¤«¤é¸Æ¤Ð¤ì¤ë PrintLine ¥á¥½¥Ã¥É¤À¡£
'Private ¤Ê¤Î¤Ç¡¢¤³¤Î¥¯¥é¥¹¤ÎÃæ¤À¤±¤Ç»È¤ï¤ì¤ë¡£
Private Sub PrintLine()
    Dim lngCnt As Long
    'ÏȤγѤòɽ¸½¤¹¤ë"+"¥Þ¡¼¥¯¤òɽ¼¨¡£
    Debug.Print "+";
    'width¸Ä¤Î"-"¤òɽ¼¨¤·¤Æ¡¢ÏÈÀþ¤È¤·¤ÆÍѤ¤¤ë
    For lngCnt = 1 To mlngWidth
        Debug.Print "-";
    Next lngCnt
    'ÏȤγѤòɽ¸½¤¹¤ë"+"¥Þ¡¼¥¯¤òɽ¼¨¡£
    Debug.Print "+"
End Sub

'-----------------------------------------------------------
' clsCAbstractDisplay ¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹
'-----------------------------------------------------------
Private Sub clsCAbstractDisplay_Init2( _
pobjConcrete As clsCObject)
    '²¿¤â¤·¤Ê¤¤
End Sub

Private Sub clsCAbstractDisplay_OpenDisp()
    Call Me.OpenDisp
End Sub

Private Sub clsCAbstractDisplay_PrintDisp()
    Call Me.PrintDisp
End Sub

Private Sub clsCAbstractDisplay_CloseDisp()
    Call Me.CloseDisp
End Sub

Private Sub clsCAbstractDisplay_Display()
    Call Me.Display
End Sub

'-----------------------------------------------------------
' clsCObject ¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹
'-----------------------------------------------------------
Private Sub clsCObject_Init2(pobjConcrete As clsCObject)
    '²¿¤â¤·¤Ê¤¤
End Sub

Private Property Get clsCObject_Concrete() As clsCObject
    Dim obj As clsCObject
    Set obj = mobjSuper
    Set clsCObject_Concrete = obj.Concrete
End Property
'<<<<<<<<<<=================================================
ɸ½à¥â¥¸¥å¡¼¥ë¡§modCMain
'=================================================>>>>>>>>>>
'ɸ½à¥â¥¸¥å¡¼¥ë¡§modCMain
'===========================================================
Option Explicit

'¥á¥¤¥ó½èÍý£±
Sub Main1()
    Dim d1 As clsCAbstractDisplay
    Dim d2 As clsCAbstractDisplay
    Dim d3 As clsCAbstractDisplay
    '"H"¤ò»ý¤Ã¤¿clsCCharDisplay¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤ò1¸Äºî¤ë¡£
    Set d1 = modCCharDisplay.Init2("H")
    '"Hello, world."¤ò»ý¤Ã¤¿clsCStringDisplay
    '¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤ò1¸Äºî¤ë¡£
    Set d2 = modCStringDisplay.Init2("Hello, world.")
    '"¤³¤ó¤Ë¤Á¤Ï¡£"¤ò»ý¤Ã¤¿clsCStringDisplay
    '¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤ò1¸Äºî¤ë¡£
    Set d3 = modCStringDisplay.Init2("¤³¤ó¤Ë¤Á¤Ï¡£")
    'd1,d2,d3¤È¤â¡¢¤¹¤Ù¤ÆƱ¤¸clsCAbstractDisplay
    '¤Î¥µ¥Ö¥¯¥é¥¹ '¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤À¤«¤é¡¢
    '·Ñ¾µ¤·¤¿Display¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤¹¤³¤È¤¬¤Ç¤­¤ë¡£
    '¼ÂºÝ¤ÎÆ°ºî¤Ï¸Ä¡¹¤Î¥¯¥é¥¹clsCCharDisplay¤ä
    'clsCStringDisplay¤ÇÄê¤Þ¤ë¡£
    Call d1.Display
    Call d2.Display
    Call d3.Display
End Sub
'<<<<<<<<<<=================================================

Top > Excel VBA ¤Ç¥Ç¥¶¥¤¥ó¥Ñ¥¿¡¼¥ó > TemplateMethod¥Ñ¥¿¡¼¥ó

¤³¤Î¥Ú¡¼¥¸¤Ø¤Î¥³¥á¥ó¥È

4UPuVd I really like and appreciate your article.Thanks Again. Great.

0
Posted by seo thing 2013ǯ12·î20Æü(¶â) 22:10:44 ÊÖ¿®

VBADP03 - VBA �� Java �Υ��֥������Ȼظ��ץ����ߥ� - Seesaa Wiki�ʥ������� for ���ޡ��ȥե��� モンクレール ブランソン アウトレット http://www.pslcbi.com/moncler2014.html

0
Posted by ãƒ¢ãƒ³ã‚¯ãƒ¬ãƒ¼ãƒ« ブランソン アウトレット 2013ǯ12·î10Æü(²Ð) 10:21:48 ÊÖ¿®

VBADP03 - VBA �� Java �Υ��֥������Ȼظ��ץ����ߥ� - Seesaa Wiki�ʥ������� for ���ޡ��ȥե��� モンクレール 店舗 http://www.pslcbi.com/moncler2014.html

0
Posted by ãƒ¢ãƒ³ã‚¯ãƒ¬ãƒ¼ãƒ« 店舗 2013ǯ12·î07Æü(ÅÚ) 15:12:31 ÊÖ¿®

pycGzJ <a href="http://baykqjhqgqjv.com/">baykqjhqgqjv</a>, [url=http://vuprazkbdpqn.com/]vuprazkbdpqn[/url], [link=http://hjiwrgdjxcld.com/]hjiwrgdjxcld[/link], http://ybbajflkyugm.com/

0
Posted by qlojkt 2013ǯ11·î15Æü(¶â) 05:38:04 ÊÖ¿®

¥³¥á¥ó¥È¤ò¤«¤¯


¡Öhttp://¡×¤ò´Þ¤àÅê¹Æ¤Ï¶Ø»ß¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

ÍøÍѵ¬Ìó¤ò¤´³Îǧ¤Î¤¦¤¨¤´µ­Æþ²¼¤µ¤¤

ÊÔ½¸¤Ë¤ÏID¤¬É¬ÍפǤ¹