ExcelVBA¥²¡¼¥à¥×¥í¥°¥é¥ß¥ó¥°¡©

½é¿´¼Ô¤Ç¤â¤­¤Ã¤È¤Ç¤­¤ë¡ª
£Å£ø£ã£å£ì¤µ¤¨»ý¤Ã¤Æ¤¤¤ì¤ÐÆÃÊ̤ʥ½¥Õ¥È¤ÏÉÔÍסª
¤¹¤°¤Ë¤Ç¤â»Ï¤á¤é¤ì¤ë´Êñ¥²¡¼¥à¥×¥í¥°¥é¥ß¥ó¥°¡ª
º£¤¹¤°»Ï¤á¤è¤¦¡ª

¥µ¥ó¥×¥ë¤ä¥²¡¼¥à¤Î¥À¥¦¥ó¥í¡¼¥É¤¬¤Ç¤­¤ëÊ̴ۤ⹥ɾ±¿±ÄÃæ¤Ç¤¹¡£
¤´°Õ¸«¤ä¤´¼ÁÌä¡¢¥²¡¼¥à¤Î´¶ÁÛÅù¤Ï·Ç¼¨ÈĤޤǤªµ¤·Ú¤Ë¡£À§Èó¡¢³§¤µ¤ó¤ÎÀ¼¤òʹ¤«¤»¤Æ¤¯¤À¤µ¤¤¡£±¿±Ä¡¢³«È¯¤ÎÎå¤ß¤Ë¤Ê¤ê¤Þ¤¹¡£



³Æ¼ï¥À¥¦¥ó¥í¡¼¥É¤Ï¥³¥Á¥é ¢­ °Õ¸«¡¦´¶ÁÛ¡¦¼ÁÌä¤Ï¥³¥Á¥é ¢­
±ÆÁÒ¸Ë Shadow warehouse ¥µ¥Ý¡¼¥È·Ç¼¨ÈÄ
¥Ö¥í¥°¤ÎÁ´ÂÎÁü¤Ï¥³¥Á¥é ¢­ ¥ê¥ó¥¯¤Î¥Ú¡¼¥¸¤Ï¥³¥Á¥é ¢­
¥µ¥¤¥È¥Þ¥Ã¥× ¼«Ê¬Ë̤ܰʥê¥ó¥¯


£Ã£è£á£ð£ô£å£ò.£¶£° [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£²£°¡§¤¤¤è¤¤¤è´°À®STG ]

¢£¥·¥ç¥Ã¥È´ØÏ¢¤Î½èÍý

¤µ¤¡¡¢¤¤¤è¤¤¤èº£²ó¤Î¹ÖºÂ¤Ç¡¢Ä¹¤«¤Ã¤¿¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à¤Î¹ÖºÂ¤âºÇ¸å¤Ç¤¹¡£µ¤¹ç¤òÆþ¤ì¤Æ´èÄ¥¤ê¤Þ¤·¤ç¤¦¡£

¤½¤ì¤Ç¤Ï¡¢Á°²óÀë¸À¤·¤¿¤È¤ª¤ê¡¢º£²ó¤Ï¥·¥ç¥Ã¥È´ØÏ¢¤Î½èÍý¤ò°ìµ¤¤Ë¤ä¤Ã¤Æ¤·¤Þ¤¤¤Þ¤¹¡£¤Þ¤º¤Ï¥×¥ì¥¤¥ä¡¼¥­¥ã¥é¥¯¥¿¡¼¤¬Êü¤Ã¤¿¥·¥ç¥Ã¥È¤Î½èÍý¤«¤é¸«¤Æ¤¤¤­¤Þ¤·¤ç¤¦¡£

Sub P_Shot_Action()

    Dim L As Long
    Dim LL As Long

    For L = 0 To 4
        With P_Shot_Data(L)
            If .Vis Then
                .Y = .Y - 6
                If .Y < -5 Then .Vis = False
                For LL = 0 To 9
                    If Enemy_Data(LL).Lif > 0 Then
                        If .X - 2 < Enemy_Data(LL).X + Enemy_Data(LL).W Then
                            If .X + 2 > Enemy_Data(LL).X - Enemy_Data(LL).W Then
                                If .Y - 2 < Enemy_Data(LL).Y + Enemy_Data(LL).H Then
                                    If .Y + 2 > Enemy_Data(LL).Y - Enemy_Data(LL).H Then
                                        .Vis = False
                                        With Enemy_Data(LL)
                                            Call Burst_Begin(.X, .Y)
                                            .Lif = 0
                                        End With
                                        Score = Score + 100
                                        Exit For
                                    End If
                                End If
                            End If
                        End If
                    End If
                Next
                If Boss_Data.Lif > 0 Then
                    If .X - 2 < Boss_Data.X + Boss_Data.W Then
                        If .X + 2 > Boss_Data.X - Boss_Data.W Then
                            If .Y - 2 < Boss_Data.Y + Boss_Data.H Then
                                If .Y + 2 > Boss_Data.Y - Boss_Data.H Then
                                    .Vis = False
                                    With Boss_Data
                                        Call Burst_Begin(.X, .Y)
                                        .Lif = .Lif - 1
                                    End With
                                    Score = Score + 50
                                End If
                            End If
                        End If
                    End If
                End If

                With UserForm1.Controls("P_Shot" & L + 1)
                    If P_Shot_Data(L).Vis Then
                        .Left = P_Shot_Data(L).X - Shot_Size
                        .Top = P_Shot_Data(L).Y - Shot_Size
                    Else
                        .Visible = False
                    End If
                End With
            End If
        End With
    Next

End Sub

¥Ü¥¹¥­¥ã¥é¥¯¥¿¡¼¤Ï¡¢Ä̾ï¤Î¥¶¥³Å¨¥­¥ã¥é¥¯¥¿¡¼¤È¤Ï°ã¤¦¹½Â¤ÂÎÊÑ¿ô¤ò»È¤Ã¤Æ¤¤¤Þ¤¹¡£¤Ç¤¹¤«¤é¡¢¥·¥ç¥Ã¥È¤È¤Î¾×ÆÍȽÄê¤âÆÈ¼«¤Ë¼ÂÁõ¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£Äɲäµ¤ì¤Æ¤¤¤ë¤Î¤ÏÎ理Çɽ¼¨¤µ¤ì¤Æ¤¤¤ëÉôʬ¤À¤±¤Ç¤¹¡£

¼ÂºÝ¤Ë¤ä¤Ã¤Æ¤¤¤ë¤³¤È¤Ï¡¢Ä̾ï¤Î¾×ÆÍȽÄê¤ÈÁ´¤¯Æ±¤¸¤³¤È¤ò¤·¤Æ¤¤¤ë¤À¤±¤Ç¤¹¡£¥Ü¥¹¥­¥ã¥é¥¯¥¿¡¼¤Î°ÌÃÖ¤ÈÂ礭¤µ¡¢¤³¤ì¤ò¸µ¤Ë¾×ÆÍ¤·¤Æ¤¤¤ë¤«¤É¤¦¤«·×»»¤·¤Æ¤¤¤ë¤Î¤Ç¤¹¤Í¡£

¥Ý¥¤¥ó¥È¤Ï¡¢Î理Îʸ»ú¤Î°ìÈֺǽé¤Î¹Ô¤ÎÉôʬ¡£¤³¤³¤Ç¡¢¥Ü¥¹¥­¥ã¥é¥¯¥¿¡¼¤¬Â¸ºß¤·¤Æ¤¤¤ë¤«¤É¤¦¤«Ä´¤Ù¤Æ¤¤¤Þ¤¹¡£Â¸ºß¤·¤Æ¤¤¤Ê¤¤¤È¤­¤Ë¾×ÆÍȽÄê¤ò¹Ô¤¦É¬ÍפÏ̵¤¤¤Î¤Ç¡¢¤³¤³¤Ç¤½¤ì¤òȽÃǤ·¤Æ¤«¤é¾×ÆÍȽÄê¤Î½èÍý¤Ë°Ü¤Ã¤Æ¤¤¤ë¤ï¤±¤Ç¤¹¡£


¢£Å¨¥­¥ã¥é¥¯¥¿¡¼¤Î¥·¥ç¥Ã¥È

¤µ¤Æ¡¢¼¡¤ËŨ¥­¥ã¥é¥¯¥¿¡¼¤Î¥·¥ç¥Ã¥È¤Þ¤ï¤ê¤ò½¤Àµ¤·¤Þ¤·¤ç¤¦¡£
Á°²ó¤Î¹ÖºÂ¤ÇºÜ¤»¤¿¥³¡¼¥É¤ÎÃæ¤Ë¡¢¥Ü¥¹¥­¥ã¥é¥¯¥¿¡¼¤¬Êü¤Ä¥·¥ç¥Ã¥È¤Î½èÍý¤¬¤¢¤ê¤Þ¤·¤¿¡£¤½¤³¤Ç¤Ï¡¢¥Ü¥¹¥­¥ã¥é¥¯¥¿¡¼¤¬£µ¼ïÎà¤Î¥·¥ç¥Ã¥È¤ò·â¤Ã¤Æ¤¯¤ë¤è¤¦¤ËÀ߷פµ¤ì¤Æ¤¤¤Þ¤·¤¿¤¬¡¢º£¸½ºß¤Ï£³¼ïÎà¤Î¥·¥ç¥Ã¥È¤·¤«ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£

¤³¤³¤Ç¤Ï¡¢¥·¥ç¥Ã¥È¤Î¼ïÎà¤Ë±þ¤¸¤Æ½èÍý¤¬Ê¬¤«¤ì¤ë¤è¤¦¤Ë¡¢Å¬µ¹¡¢¥³¡¼¥É¤Î½¤ÀµµÚ¤ÓÄɲäò¹Ô¤¤¤Þ¤·¤ç¤¦¡£
¤Þ¤º¤Ï¡¢¥·¥ç¥Ã¥È¤òÀ¸À®¤¹¤ë¥×¥í¥·¡¼¥¸¥ã¤Î½¤Àµ¤«¤é¤Ç¤¹¡£

¥·¥ç¥Ã¥È¤ÎÀ¸À®Ãʳ¬¤Ç¡¢¥·¥ç¥Ã¥È¤Î¼ïÎà¤Ë±þ¤¸¤Æ¡¢²èÁü¤¬ÊѲ½¤¹¤ë¤è¤¦¤Ë¤·¤Æ¤ß¤Þ¤¹¡£

Sub E_Shot_Begin(X As Single, Y As Single, Typ As Long)
    
    Dim L As Long
    
    For L = 0 To 9
        With E_Shot_Data(L)
            If Not .Vis Then
                .X = X
                .Y = Y
                .Typ = Typ
                .Vis = True
                With UserForm1.Controls("E_Shot" & L + 1)
                    .Visible = True
                    Select Case Typ
                        Case 1, 2, 3
                            .Picture = UserForm1.E_Shot_s1.Picture
                        Case Else
                            .Picture = UserForm1.E_Shot_s2.Picture
                    End Select

                End With
                Exit For
            End If
        End With
    Next
    
End Sub

¤µ¤Æ¡¢Îп§¤Ë¤Ê¤Ã¤Æ¤¤¤ëÉôʬ¤¬º£²óÄɲ䵤줿Éôʬ¤Ç¤¹¤¬¡¢²¿¤ò¤·¤è¤¦¤È¤·¤Æ¤¤¤ë¤«¡¢¤Ê¤ó¤È¤Ê¤¯¤ï¤«¤ê¤Þ¤¹¤«¡©

¤³¤³¤Ç¤Ï¡¢¥·¥ç¥Ã¥È¤Î¥¿¥¤¥×¤Ë¤è¤Ã¤Æ¡¢²èÁü¤¬ÀÚ¤êÂØ¤ï¤ë¤è¤¦¤Ë½èÍý¤·¤Æ¤¤¤Þ¤¹¡£
Á°¡¹²ó¤Î¹ÖºÂ¤Ç¡¢¥æ¡¼¥¶¡¼¥Õ¥©¡¼¥à¾å¤Ë¥·¥ç¥Ã¥ÈÍѤθ¶²è¤È¤Ê¤ë¥¤¥á¡¼¥¸¥³¥ó¥È¥í¡¼¥ë¤òÇÛÃÖ¤·¤Þ¤·¤¿¡£¡ØE_Shot_s1¡¦E_Shot_s2¡Ù¤¬¤³¤ì¤Ë¤¢¤¿¤ê¤Þ¤¹¡£

¥·¥ç¥Ã¥È¤Î¥¿¥¤¥×¤¬¡¢£±¤«£²¤«£³¤Î¾ì¹ç¤Ë¤Ï¡¢ÀĤ¤¥·¥ç¥Ã¥È¤Î¤Û¤¦¤ò»È¤¤¤Þ¤¹¡£ÀĤ¤¥·¥ç¥Ã¥È¤Î²èÁü¤ÏE_Shot_s1¤Î²èÁü¤ò»È¤¤¤Þ¤¹¡£
¤½¤·¤Æ¡¢¤½¤ì°Ê³°¤Î¾ì¹ç¤Ë¤ÏE_Shot_s2¤Î²èÁü¤ò»È¤¤¤Þ¤¹¡£º£²ó¤Ï£´ÈÖÌܤȣµÈÖÌܤΥ·¥ç¥Ã¥È¤òÄɲä·¤Þ¤¹¤Î¤Ç¡¢¤½¤Î¤Õ¤¿¤Ä¤Î¥·¥ç¥Ã¥È¤ÏE_Shot_s2¤ò¸¶²è¤È¤·¤Æ»ÈÍѤ·¤ÆÉ½¼¨¤¹¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

¤³¤Î¥×¥í¥·¡¼¥¸¥ã¤Ç½¤Àµ¤·¤Æ¤¤¤ë¤Î¤Ï¤³¤³¤À¤±¤Ç¤¹¡£´Êñ¤Ç¤¹¤Í¡£

¤µ¤ÆÌäÂê¤Ï¼¡¤Ç¤¹¡£
¥·¥ç¥Ã¥È¤Î£´ÈÖÌܤȣµÈÖÌÜ¡¢¤³¤ì¤¬¤É¤Î¤è¤¦¤Êư¤­¤ò¤¹¤ë¤Î¤«¤òÄêµÁ¤·¤Æ¤ª¤«¤Ê¤¯¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡£¤½¤ì¤¬¼¡¤Î¥³¡¼¥É¤Ë¤Ê¤ê¤Þ¤¹¡£¤Á¤ç¤Ã¤ÈŤ¤¤Ç¤¹¤¬¡¢¿§¤Ä¤­¤ÎÉôʬ¤Ë¹Ê¤Ã¤Æ¹Í¤¨¤ì¤ÐÂç¾æÉפÀ¤È»×¤¤¤Þ¤¹¡£

Sub E_Shot_Action()

    Dim L As Long
    Dim LL As Long
    
    For L = 0 To 9
        With E_Shot_Data(L)
            If .Vis Then
                Select Case .Typ
                    Case 1
                        .Y = .Y + 4.5
                    Case 2
                        .X = .X + 0.5
                        .Y = .Y + 3.5
                    Case 3
                        .X = .X - 0.5
                        .Y = .Y + 3.5
                    Case 4
                        If .X < Player_Data.X Then
                            .X = .X + 1.5
                        Else
                            .X = .X - 1.5
                        End If
                        .Y = .Y + 2
                    Case 5
                        .Y = .Y + 6

                End Select
                If .X > 205 Then .Vis = 0
                If .Y > 205 Then .Vis = 0
                If .X < -5 Then .Vis = 0
                If .Y < -5 Then .Vis = 0
                If .X - 2 < Player_Data.X + Player_Data.W Then
                    If .X + 2 > Player_Data.X - Player_Data.W Then
                        If .Y - 2 < Player_Data.Y + Player_Data.H Then
                            If .Y + 2 > Player_Data.Y - Player_Data.H Then
                                .Vis = False
                                With Player_Data
                                    Call Burst_Begin(.X, .Y)
                                    .Lif = 0
                                End With
                            End If
                        End If
                    End If
                End If
                With UserForm1.Controls("E_Shot" & L + 1)
                    If E_Shot_Data(L).Vis Then
                        .Left = E_Shot_Data(L).X - Shot_Size
                        .Top = E_Shot_Data(L).Y - Shot_Size
                    Else
                        .Visible = False
                    End If
                End With
            End If
        End With
    Next
                
End Sub

¥·¥ç¥Ã¥È¤Î£´ÈÖÌܤϡ¢´Ê°×Ū¤ÊÄÉÈøÃÆ¤Ç¤¹¡£
¥×¥ì¥¤¥ä¡¼¥­¥ã¥é¥¯¥¿¡¼¤Î¸½ºß¤Î²£°ÌÃÖ¤òÄ´¤Ù¤Æ¡¢¤½¤ÎÊý¸þ¤Ø°Üư¤·¤Æ¤¤¤¯¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£¥·¥ç¥Ã¥È¤Î°ÌÃÖ¤è¤ê¥×¥ì¥¤¥ä¡¼¤¬º¸¤Ë¤¤¤ì¤Ð¡¢¥·¥ç¥Ã¥È¤âº¸¤Ø¸þ¤«¤¦¤È¤¤¤¦¶ñ¹ç¤Ç¤¹¤Í¡£
ÄÉÈøÃÆ¤È¤¤¤¦¤Î¤Ï¡¢ËÜʪ¤ò¤ä¤í¤¦¤È¤¹¤ë¤È·ë¹½ÂçÊѤʤΤǡ¢º£²ó¤Ï´Ê°×Ū¤Ê¼ÂÁõ¤Ëα¤á¤Æ¤¤¤Þ¤¹¡£²£°ÌÃÖ¤òÄ´¤Ù¤Æ¤½¤ÎÊý³Ñ¤Ø°Üư¤µ¤»¤ë¤À¤±¤Ê¤é¡¢·ë¹½´Êñ¤Ç¤¹¤«¤é¤Í¡£

£µÈÖÌܤΥ·¥ç¥Ã¥È¤Ï¡¢Ã±¤Ë²¼Êý¸þ¤Ø¤Þ¤Ã¤¹¤°¿Ê¤à¤À¤±¤Ç¤¹¡£¤¿¤À¤·¡¢£±²ó¤Î¥ë¡¼¥×¤Ç°Üư¤¹¤ëµ÷Î¥¤¬¾¯¡¹Â礭¤á¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤ì¤Ï¤Ä¤Þ¤ê¹â®°Üư¤¹¤ë¥·¥ç¥Ã¥È¤È¤¤¤¦¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£

¤³¤Î¥×¥í¥·¡¼¥¸¥ã¤ËÄɲ乤ë¤Î¤Ï¤³¤ì¤À¤±¤ÇOK¤Ç¤¹¡£
¤½¤·¤Æ¡¢¤³¤ì¤Ç½¤Àµ¤Î¤Û¤ÜÁ´¤Æ¤¬´°Î»¤·¤¿¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£


¢£¤Þ¤È¤á

¤¤¤ä¤¡¡¢Ä¹¤«¤Ã¤¿¡£ËÜÅö¤ËŤ«¤Ã¤¿¡£
¤Ò¤È¤Ä¤ÎºîÉʤòºî¤ê¾å¤²¤ë¤È¤¤¤¦¤³¤È¤Ï¡¢ËÜÅö¤ËÂçÊѤÊÏ«ÎϤò»È¤¤¤Þ¤¹¡£¼ê´Ö¤â¡¢º¬µ¤¤â¡¢ÊÂÂçÄñ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤½¤ì¤À¤±¤Ë¡¢ÂçÄñ¤Î¥×¥í¥°¥é¥à¤È¤¤¤¦¤Î¤Ï¡¢ÅÓÃæ¤Ç³«È¯¤¬»ß¤Þ¤Ã¤Æ¤·¤Þ¤¤¡¢Ì¤´°À®¤Ë½ª¤ï¤ë¤³¤È¤¬Â¿¤¤¤Î¤Ç¤¹¡£

¤·¤«¤·¡¢°ÊÁ°¤Ë¤â¸À¤¤¤Þ¤·¤¿¤¬¡¢¥²¡¼¥à¤òºîÀ®¤¹¤ë¾å¤Ç¤È¤Æ¤âÂçÀڤʤ³¤È¤Î¤Ò¤È¤Ä¤¬¡¢¤È¤ê¤¢¤¨¤º´°À®¤µ¤»¤ë¤È¤¤¤¦¤³¤È¤Ê¤Î¤Ç¤¹¡£
¸æÂ÷¤ò¤¤¤¯¤éʤ٤Ƥ⡢¤Ò¤È¤Ä¤ÎºîÉʤ¬½ÐÍè¾å¤¬¤é¤Ê¤«¤Ã¤¿¤é°ÕÌ£¤¬¤¢¤ê¤Þ¤»¤ó¡£¤¨¤é¤½¤¦¤Ê¤³¤È¤ò¸À¤Ã¤Æ¡¢Ãμ±¤Ð¤Ã¤«¤ê¤¿¤¯¤µ¤ó»ý¤Ã¤Æ¤¤¤Æ¤â¡¢ºîÉʤò»Å¾å¤²¤é¤ì¤Ê¤¤¤¦¤Á¤Ï°ì¿ÍÁ°¤È¤Ï¸À¤¨¤Þ¤»¤ó¡£

¿¾¯´ÊÁǤʤâ¤Î¤Ç¤¢¤Ã¤Æ¤â¡¢¤½¤ì¤¬´°À®ÉʤǤ¢¤ë¤Ê¤é¤Ð¡¢¤½¤ì¤Ï¤¢¤Ê¤¿¤Ë¤È¤Ã¤Æ¤È¤Æ¤â°ÕÌ£¤Î¤¢¤ë¤â¤Î¤Î¤Ï¤º¤Ç¤¹¡£´Êñ¤Ê¥³¡¼¥É¤·¤«½ñ¤±¤Ê¤¯¤Æ¤â¡¢Æñ¤·¤¤¤³¤È¤Ï¤ï¤«¤é¤Ê¤¯¤Æ¤â¡¢ÅØÎϤÎËö¤ËºîÉʤò»Å¾å¤²¤¿¤È¤­¤Ë¤Ï¡¢¤¢¤Ê¤¿¤ÏΩÇÉ¤Ê¥×¥í¥°¥é¥Þ¡¼¤Ç¤¹¡£
»ä¤¬Á´¤Æ¤Î¥³¡¼¥É¤ò¸ø³«¤·¤Æ¤¤¤ë¤È¤¤¤¦ÅÔ¹ç¾å¡¢¥³¥Ô¡¼¤¹¤ë¤À¤±¤Ç¤âư¤¯¥²¡¼¥à¤Ï½ÐÍè¾å¤¬¤ê¤Þ¤¹¡£¤Ç¤â¡¢¤³¤³¤Ë¤É¤Î¤è¤¦¤Ê¥¨¥Ã¥»¥ó¥¹¤ò²Ã¤¨¤Æ¤¤¤¯¤«¤Ï¤¢¤Ê¤¿¼¡Âè¡£¤É¤Î¤è¤¦¤Ë±þÍѤ·¤ÆÀ¸¤«¤·¤Æ¤¤¤¯¤Î¤«¤â¤¢¤Ê¤¿¼¡Âè¤Ç¤¹¡£

²¿ÅÙ¤â¸À¤¤¤Þ¤¹¤¬¡¢»ä¤¬¤Ç¤­¤ë¤Î¤Ï¡¢³§¤µ¤ó¤Î¤ª¼êÅÁ¤¤¡¢Æ»°ÆÆâ¤À¤±¤Ç¤¹¡£
¤³¤Î¹ÖºÂ¤òÄ̤·¤ÆÆÀ¤¿Ãμ±¤Ç¡¢³§¤µ¤ó¤¬ÆÈ¼«¤ÎÀ¤³¦¤òɽ¸½¤·¤Æ¤¤¤¯¤³¤È¤òÀڤ˴ꤤ¤Þ¤¹¡£

¤È¤Ë¤«¤¯¡¢¤³¤³¤Þ¤Çº¬µ¤¶¯¤¯¿Ê¤á¤Æ¤­¤Æ¤¯¤À¤µ¤Ã¤¿³§¤µ¤ó¡£ËÜÅö¤Ë¤ªÈè¤ìÍͤǤ·¤¿¡£


ºÇ¸å¤Ë¥³¡¼¥É¤òÁ´¤Æ·ÇºÜ¤·¤Æ¤ª¤­¤Þ¤¹¡£¹ÖºÂ¤ÎºÇ¸å¤Ë¤Ï¡¢¥µ¥ó¥×¥ë¤Î¥Ú¡¼¥¸¤Ø¤Î¥ê¥ó¥¯¤âŽ¤Ã¤Æ¤ª¤­¤Þ¤¹¡£¤³¤ì¤é¤ò»²¹Í¤Ë¡¢´èÄ¥¤Ã¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£


¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à¹ÖºÂ¡¡Á´¥³¡¼¥É·ÇºÜ
'ɸ½à¥â¥¸¥å¡¼¥ëÀèÆ¬Éôʬ

'¢¡API¡¡Àë¸À

Declare Function GetTickCount Lib "kernel32" () As Long
Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Declare Sub Sleep Lib "kernel32.dll" (ByVal dwMillsecounds As Long)

'¢£¥­¥ã¥é¥¯¥¿¡¼¡¡¹½Â¤ÂÎÀë¸À
Type Chara
    X As Single
    Y As Single
    W As Single
    H As Single
    Lif As Long
    Typ As Long
    Par As Long
End Type

'¢£¥·¥ç¥Ã¥È¡¡¹½Â¤ÂÎÀë¸À
Type Shot
    X As Single
    Y As Single
    Vis As Boolean
    Typ As Long
End Type

'¢£ÈÆÍÑ¥ª¥Ö¥¸¥§¥¯¥È¡¡¹½Â¤ÂÎÀë¸À
Type Obj
    X As Single
    Y As Single
    W As Single
    H As Single
    Par As Long
End Type

'¡ü¥­¥ã¥é¥¯¥¿¡¼¡¡ÊÑ¿ôÀë¸À
Public Player_Data As Chara
Public Enemy_Data(9) As Chara
Public Boss_Data As Chara

'¡ü¥·¥ç¥Ã¥È¡¡ÊÑ¿ôÀë¸À
Public P_Shot_Data(4) As Shot
Public E_Shot_Data(9) As Shot

'¡üÈÆÍÑ¥ª¥Ö¥¸¥§¥¯¥È¡¡ÊÑ¿ôÀë¸À
Public Burst_Data(2) As Obj

'¡ý¤½¤Î¾¡¡ÊÑ¿ôÀë¸À
Public Shot_Interval As Long
Public Total_Count As Long '¥²¡¼¥àÃæ¤Î¥«¥¦¥ó¥¿
Public Player_Stock As Long '¥×¥ì¥¤¥ä¡¼¤Î»Äµ¡¿ô
Public Score As Long '¥²¡¼¥à¤Î¥¹¥³¥¢
Public Boss_Begin As Boolean '¥Ü¥¹¤¬½Ð¸½¤·¤Æ¤¤¤ë¤«¤É¤¦¤«
Public Game_Mode As Long '¸½ºß¤Î¥²¡¼¥à¥â¡¼¥É
'£°¡á¥¿¥¤¥È¥ë
'£±¡á¥²¡¼¥àÃæ
'£²¡á¥²¡¼¥à¥ª¡¼¥Ð¡¼
'£³¡á¥²¡¼¥à¥¯¥ê¥¢

'¢¥Äê¿ôÀë¸À
Public Const Left_Key As Long = 37 '¥«¡¼¥½¥ëº¸
Public Const Up_Key As Long = 38 '¥«¡¼¥½¥ë¾å
Public Const Right_Key As Long = 39 '¥«¡¼¥½¥ë±¦
Public Const Down_Key As Long = 40 '¥«¡¼¥½¥ë²¼
Public Const Esc_Key As Long = 27 '£Å£ó£ã¥­¡¼
Public Const Shot_Key As Long = 90 '£Ú¥­¡¼
Public Const Player_Size As Single = 9
'¥×¥ì¥¤¥ä¡¼¥­¥ã¥é¥¯¥¿¡¼¤Î¼ÂºÝ¤ÎÂ礭¤µ
Public Const Shot_Size As Single = 3
'ÃÆ³Æ¼ï¤Î¼ÂºÝ¤ÎÂ礭¤µ
Public Const Enemy_Size As Single = 9
'Ũ¥­¥ã¥é¥¯¥¿¡¼¤Î¼ÂºÝ¤ÎÂ礭¤µ
Public Const Burst_Size As Single = 15
'Çúȯ¥¨¥Õ¥§¥¯¥È¤Î¼ÂºÝ¤ÎÂ礭¤µ
Public Const Boss_size As Single = 15
'¥Ü¥¹¤Î¼ÂºÝ¤ÎÂ礭¤µ


'½é´ü²½¤òôÅö¤¹¤ë¥×¥í¥·¡¼¥¸¥ã

Sub Init()
    With Player_Data
        .X = 100
        .Y = 210
        .W = 3
        .H = 3
        .Lif = 1
        .Typ = 0
        .Par = 1
    End With
    With Boss_Data
        .X = 0
        .Y = 0
        .W = 0
        .H = 0
        .Lif = 0
        .Typ = 0
        .Par = 0
    End With

    Erase P_Shot_Data
    Erase E_Shot_Data
    Erase Enemy_Data
    Erase Burst_Data
    Shot_Interval = 0
    Total_Count = 0
    Player_Stock = 2
    Score = 0
    Game_Mode = 0
    Boss_Begin = False
    With UserForm1.Player
        .Visible = True
        .Top = 200
    End With
    UserForm1.Lab_Score.Caption = "00000000"
End Sub


'¥á¥¤¥ó¥×¥í¥»¥¹¤òôÅö¤¹¤ë¥×¥í¥·¡¼¥¸¥ã

Sub Main()

    Dim Flg As Boolean
    Dim Stm As Long
    
    Init
    
    Flg = False
    
    Do Until Flg
        Stm = GetTickCount
        Total_Count = Total_Count + 1
        Select Case Game_Mode
            Case 0
                Call Tytle_Action
            Case 1
                Call Stage_Count
                Call Player_Action
                Call Enemy_Action
                Call P_Shot_Action
                Call E_Shot_Action
                Call Burst_Action
                If Boss_Begin Then Boss_Action
                UserForm1.Lab_Score.Caption = Format(Score, "00000000")
            Case 2
                MsgBox "Game Over!!"
                Flg = True
            Case 3
                MsgBox "Clear!!"
                Flg = True
        End Select
        DoEvents
        Do
            Call Sleep(1)
        Loop Until GetTickCount - Stm > 30
        If GetAsyncKeyState(27) < 0 Then Flg = True
    Loop

End Sub


'¥¿¥¤¥È¥ë¤Î¥¢¥¯¥·¥ç¥ó¤ò´ÉÍý¤¹¤ë¥×¥í¥·¡¼¥¸¥ã

Sub Tytle_Action()

    With UserForm1
        .Lab_Cap1.Left = .Lab_Cap1.Left + 3
        .Lab_Cap2.Left = .Lab_Cap2.Left - 3
        If .Lab_Cap1.Left > 200 Then
            .Lab_Cap1.Visible = False
            .Lab_Cap2.Visible = False
            Game_Mode = 1
        End If
    End With
    
End Sub


'Ũ¥­¥ã¥é¥¯¥¿¡¼¤Î½Ð¸½´ÉÍý¥×¥í¥·¡¼¥¸¥ã

Sub Stage_Count()

    Dim TCMOD As Long
    
    Randomize
    
    TCMOD = Total_Count Mod 1000
    
    If Total_Count < 2000 Then
        Select Case TCMOD
            Case 100, 150, 600, 650, 700, 750
                Call Enemy_Begin(Int(Rnd * 120) + 40, -10, 1)
            Case 200, 350, 450, 500, 800, 950
                Call Enemy_Begin(Int(Rnd * 120) + 40, -10, 2)
            Case 250, 300, 400, 550, 850, 900
                Call Enemy_Begin(Int(Rnd * 120) + 40, -10, 3)
        End Select
    Else
        If Total_Count = 2000 Then
            With Boss_Data
                .X = 100
                .Y = -20
                .W = 8
                .H = 8
                .Lif = 50
                .Par = 0
                .Typ = 0
            End With
            Boss_Begin = True
            UserForm1.Boss.Visible = True
        End If
    End If
    
End Sub



'¥×¥ì¥¤¥ä¡¼¥­¥ã¥é¥¯¥¿¡¼¤òôÅö¤¹¤ë¥×¥í¥·¡¼¥¸¥ã

Sub Player_Action()

    Dim S As Single
    Dim SS As Single
    
    Randomize
    
    With Player_Data
        If .Lif > 0 Then
            If .Par > 0 Then
                If .Y > 180 Then
                    .Y = .Y - 1
                Else
                    .Par = 0
                End If
            Else
                If GetAsyncKeyState(Left_Key) < 0 Then .X = .X - 3
                If GetAsyncKeyState(Up_Key) < 0 Then .Y = .Y - 3
                If GetAsyncKeyState(Right_Key) < 0 Then .X = .X + 3
                If GetAsyncKeyState(Down_Key) < 0 Then .Y = .Y + 3

                If .X - Player_Size < 0 Then .X = Player_Size
                If .X + Player_Size > 200 Then .X = 200 - Player_Size
                If .Y - Player_Size < 0 Then .Y = Player_Size
                If .Y + Player_Size > 200 Then .Y = 200 - Player_Size

                If Shot_Interval = 0 Then
                    If GetAsyncKeyState(Shot_Key) < 0 Then
                        Call P_Shot_Begin(.X, .Y, 1)
                        Shot_Interval = 1
                    End If
                Else
                    Shot_Interval = Shot_Interval + 1
                    If Shot_Interval > 7 Then Shot_Interval = 0
                End If
            End If
        Else
            .Par = .Par + 1
            If .Par > 50 Then
                .X = 100
                .Y = 210
                .Lif = 1
                .Par = 1
                Player_Stock = Player_Stock - 1
                Select Case Player_Stock
                    Case Is < 0
                        Game_Mode = 2
                    Case 0
                        UserForm1.Stock1.Visible = False
                    Case 1
                        UserForm1.Stock2.Visible = False
                End Select
            Else
                If .Par Mod 9 = 1 Then
                    S = Int(Rnd * 20) - 9
                    SS = Int(Rnd * 20) - 9
                    Call Burst_Begin(.X + S, .Y + SS)
                End If
            End If
        End If
        With UserForm1.Player
            .Left = Player_Data.X - Player_Size
            .Top = Player_Data.Y - Player_Size
        End With
    End With
    
End Sub


'¥·¥ç¥Ã¥ÈÀ¸À®¥×¥í¥·¡¼¥¸¥ã

Sub P_Shot_Begin(X As Single, Y As Single, Typ As Long)

    Dim L As Long

    For L = 0 To 4
        With P_Shot_Data(L)
            If Not .Vis Then
                .X = X
                .Y = Y
                .Typ = Typ
                .Vis = True
                UserForm1.Controls("P_Shot" & L + 1).Visible = True
                Exit For
            End If
        End With
    Next

End Sub


'¥·¥ç¥Ã¥È°Üư´ÉÍý¥×¥í¥·¡¼¥¸¥ã

Sub P_Shot_Action()

    Dim L As Long
    Dim LL As Long

    For L = 0 To 4
        With P_Shot_Data(L)
            If .Vis Then
                .Y = .Y - 6
                If .Y < -5 Then .Vis = False
                For LL = 0 To 9
                    If Enemy_Data(LL).Lif > 0 Then
                        If .X - 2 < Enemy_Data(LL).X + Enemy_Data(LL).W Then
                            If .X + 2 > Enemy_Data(LL).X - Enemy_Data(LL).W Then
                                If .Y - 2 < Enemy_Data(LL).Y + Enemy_Data(LL).H Then
                                    If .Y + 2 > Enemy_Data(LL).Y - Enemy_Data(LL).H Then
                                        .Vis = False
                                        With Enemy_Data(LL)
                                            Call Burst_Begin(.X, .Y)
                                            .Lif = 0
                                        End With
                                        Score = Score + 100
                                        Exit For
                                    End If
                                End If
                            End If
                        End If
                    End If
                Next
                If Boss_Data.Lif > 0 Then
                    If .X - 2 < Boss_Data.X + Boss_Data.W Then
                        If .X + 2 > Boss_Data.X - Boss_Data.W Then
                            If .Y - 2 < Boss_Data.Y + Boss_Data.H Then
                                If .Y + 2 > Boss_Data.Y - Boss_Data.H Then
                                    .Vis = False
                                    With Boss_Data
                                        Call Burst_Begin(.X, .Y)
                                        .Lif = .Lif - 1
                                    End With
                                    Score = Score + 50
                                End If
                            End If
                        End If
                    End If
                End If

                With UserForm1.Controls("P_Shot" & L + 1)
                    If P_Shot_Data(L).Vis Then
                        .Left = P_Shot_Data(L).X - Shot_Size
                        .Top = P_Shot_Data(L).Y - Shot_Size
                    Else
                        .Visible = False
                    End If
                End With
            End If
        End With
    Next

End Sub


'Ũ¥­¥ã¥é¥¯¥¿¡¼À¸À®¥×¥í¥·¡¼¥¸¥ã

Sub Enemy_Begin(X As Single, Y As Single, Typ As Long)

    Dim L As Long
    
    For L = 0 To 9
        With Enemy_Data(L)
            If .Lif = 0 Then
                .X = X
                .Y = Y
                .W = 5
                .H = 5
                .Typ = Typ
                .Lif = 1
                .Par = 0
                With UserForm1.Controls("Enemy" & L + 1)
                    .Visible = True
                    Select Case Typ
                        Case 1
                            .Picture = UserForm1.Enemy_s1.Picture
                        Case 2, 3
                            .Picture = UserForm1.Enemy_s2.Picture
                    End Select
                End With
                Exit For
            End If
        End With
    Next
    
End Sub


'Ũ¥­¥ã¥é¥¯¥¿¡¼¤òôÅö¤¹¤ë¥×¥í¥·¡¼¥¸¥ã

Sub Enemy_Action()

    Dim L As Long
    Dim TCMOD
    
    TCMOD = Total_Count Mod 30
    
    For L = 0 To 9
        With Enemy_Data(L)
            If .Lif > 0 Then
                Select Case .Typ
                    Case 1
                        .Y = .Y + 1.5
                    Case 2
                        .X = .X + 0.5
                        .Y = .Y + 1
                    Case 3
                        .X = .X - 0.5
                        .Y = .Y + 1
                End Select
                If .X > 220 Then .Lif = 0
                If .Y > 220 Then .Lif = 0
                If .X < -20 Then .Lif = 0
                If .Y < -20 Then .Lif = 0
                If TCMOD = 0 Then
                    Select Case .Typ
                        Case 2
                            .Typ = 3
                        Case 3
                            .Typ = 2
                    End Select
                    Call E_Shot_Begin(.X, .Y + 2, .Typ)
                End If
            End If
        End With
        With UserForm1.Controls("Enemy" & L + 1)
            If Enemy_Data(L).Lif > 0 Then
                .Left = Enemy_Data(L).X - Enemy_Size
                .Top = Enemy_Data(L).Y - Enemy_Size
            Else
                .Visible = False
            End If
        End With
    Next
    
End Sub


'Ũ¥­¥ã¥é¥¯¥¿¡¼¥·¥ç¥Ã¥ÈÀ¸À®¥×¥í¥·¡¼¥¸¥ã

Sub E_Shot_Begin(X As Single, Y As Single, Typ As Long)
    
    Dim L As Long
    
    For L = 0 To 9
        With E_Shot_Data(L)
            If Not .Vis Then
                .X = X
                .Y = Y
                .Typ = Typ
                .Vis = True
                With UserForm1.Controls("E_Shot" & L + 1)
                    .Visible = True
                    Select Case Typ
                        Case 1, 2, 3
                            .Picture = UserForm1.E_Shot_s1.Picture
                        Case Else
                            .Picture = UserForm1.E_Shot_s2.Picture
                    End Select

                End With
                Exit For
            End If
        End With
    Next
    
End Sub


'Ũ¥­¥ã¥é¥¯¥¿¡¼¥·¥ç¥Ã¥È°Üư´ÉÍý¥×¥í¥·¡¼¥¸¥ã

Sub E_Shot_Action()

    Dim L As Long
    Dim LL As Long
    
    For L = 0 To 9
        With E_Shot_Data(L)
            If .Vis Then
                Select Case .Typ
                    Case 1
                        .Y = .Y + 4.5
                    Case 2
                        .X = .X + 0.5
                        .Y = .Y + 3.5
                    Case 3
                        .X = .X - 0.5
                        .Y = .Y + 3.5
                    Case 4
                        If .X < Player_Data.X Then
                            .X = .X + 1.5
                        Else
                            .X = .X - 1.5
                        End If
                        .Y = .Y + 2
                    Case 5
                        .Y = .Y + 6

                End Select
                If .X > 205 Then .Vis = 0
                If .Y > 205 Then .Vis = 0
                If .X < -5 Then .Vis = 0
                If .Y < -5 Then .Vis = 0
                If .X - 2 < Player_Data.X + Player_Data.W Then
                    If .X + 2 > Player_Data.X - Player_Data.W Then
                        If .Y - 2 < Player_Data.Y + Player_Data.H Then
                            If .Y + 2 > Player_Data.Y - Player_Data.H Then
                                .Vis = False
                                With Player_Data
                                    Call Burst_Begin(.X, .Y)
                                    .Lif = 0
                                End With
                            End If
                        End If
                    End If
                End If
                With UserForm1.Controls("E_Shot" & L + 1)
                    If E_Shot_Data(L).Vis Then
                        .Left = E_Shot_Data(L).X - Shot_Size
                        .Top = E_Shot_Data(L).Y - Shot_Size
                    Else
                        .Visible = False
                    End If
                End With
            End If
        End With
    Next
                
End Sub


'¥Ü¥¹¥­¥ã¥é¥¯¥¿¡¼¤Î°Üư´ÉÍý¥×¥í¥·¡¼¥¸¥ã

Sub Boss_Action()

    Dim S As Single
    Dim SS As Single
    
    Dim TCMOD
    
    Randomize
    
    TCMOD = Total_Count Mod 500
    
    With Boss_Data
        If .Lif > 0 Then
            If .Y < 30 Then
                .Y = .Y + 1
            Else
                If .Par > 0 Then
                    .X = .X + 2
                    If .X > 160 Then
                        .X = 160
                        .Par = 0
                    End If
                Else
                    .X = .X - 2
                    If .X < 40 Then
                        .X = 40
                        .Par = 1
                    End If
                End If
            End If
            Select Case TCMOD
                Case 50, 70, 90, 110, 130, 150
                    .Typ = 1
                Case 60, 80, 100, 140
                    .Typ = 2
                Case 80, 120, 160
                    .Typ = 3
                Case 200, 230, 260, 290, 320
                    .Typ = 4
                Case 350, 360, 370, 380, 390, 400, 410, 420, 430, 440, 450
                    .Typ = 5
                Case Else
                    .Typ = 0
            End Select
            If .Typ <> 0 Then Call E_Shot_Begin(.X, .Y + 5, .Typ)
        Else
            .Par = .Par + 1
            If .Par < 100 Then
                If .Par Mod 10 = 0 Then
                    S = Int(Rnd * 25) - 13
                    SS = Int(Rnd * 25) - 13
                    Call Burst_Begin(.X + S, .Y + SS)
                End If
            Else
                Game_Mode = 3
                Boss_Begin = False
            End If
        End If
    End With
    With UserForm1.Boss
        If Boss_Begin Then
            .Left = Boss_Data.X - Boss_size
            .Top = Boss_Data.Y - Boss_size
        Else
            .Visible = False
        End If
    End With

End Sub



'Çúȯ¥¨¥Õ¥§¥¯¥ÈÀ¸À®¥×¥í¥·¡¼¥¸¥ã

Sub Burst_Begin(X As Single, Y As Single)

    Dim L As Long
    
    For L = 0 To 2
        With Burst_Data(L)
            If .Par = 0 Then
                .X = X
                .Y = Y
                .W = Burst_Size
                .H = Burst_Size
                .Par = 1
                UserForm1.Controls("Burst" & L + 1).Visible = True
                Exit For
            End If
        End With
    Next
    
End Sub


'Çúȯ¥¨¥Õ¥§¥¯¥È´ÉÍý¥×¥í¥·¡¼¥¸¥ã

Sub Burst_Action()

    Dim L As Long
    Dim Pict As Long
    
    For L = 0 To 2
        With Burst_Data(L)
            If .Par > 0 Then
                Select Case .Par
                    Case 1
                        Pict = 1
                    Case 2, 3
                        Pict = 2
                    Case 4, 5
                        Pict = 3
                    Case 6, 7
                        Pict = 4
                    Case 8
                        Pict = 5
                    Case 9
                        .Par = -1
                End Select
                .Par = .Par + 1
                With UserForm1.Controls("Burst" & L + 1)
                    If Burst_Data(L).Par > 0 Then
                        .Left = Burst_Data(L).X - Burst_Size
                        .Top = Burst_Data(L).Y - Burst_Size
                        .Picture = UserForm1.Controls("Burst_s" & Pict).Picture
                    Else
                        .Visible = False
                    End If
                End With
            End If
        End With
    Next
                
End Sub


'ɸ½à¥â¥¸¥å¡¼¥ë¤Ï¤³¤³¤Þ¤Ç
'¤³¤³¤«¤é²¼¤Ï¥Õ¥©¡¼¥à¥â¥¸¥å¡¼¥ë¤Ëµ­½Ò


'¥³¥Þ¥ó¥É¥Ü¥¿¥ó¤Î¥¯¥ê¥Ã¥¯¥¤¥Ù¥ó¥È

Private Sub Com_Start_Click()
    Com_Start.Enabled = False
    Call Main
    Unload UserForm1
End Sub


'¥æ¡¼¥¶¡¼¥Õ¥©¡¼¥à¤Î¥¯¥¨¥ê¥¯¥í¡¼¥¹¥¤¥Ù¥ó¥È

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
    End
End Sub


'¥æ¡¼¥¶¡¼¥Õ¥©¡¼¥à¤Î¥¤¥Ë¥·¥ã¥é¥¤¥º¥¤¥Ù¥ó¥È
Private Sub UserForm_Initialize()
    UserForm1.Width = 220
End Sub


¥µ¥ó¥×¥ë¥À¥¦¥ó¥í¡¼¥É¡¡¢Í¡¡¥³¥Á¥é¤è¤ê¥À¥¦¥ó¥í¡¼¥É¤Ç¤­¤Þ¤¹¡£¡ÊÊÌ´Û¡Ë


¢£³Ê¸À

¤Þ¤º¤Ï´°À®¤µ¤»¤ë¤³¤È¤¬ÂçÀÚ
¤¢¤È¤ÏÅØÎϤȹ©É×¼¡Âè


¥Ü¥¹¥­¥ã¥é¥¯¥¿¡¼¤Îư¤­¤Ê¤É¡¢¥µ¥ó¥×¥ë¤ÈÊ»ÍѤ·¤Æ¤ß¤ë¤È¤ï¤«¤ê¤ä¤¹¤¤¤È»×¤¤¤Þ¤¹¡£






Comment

Name
E-mail
URL
Comment
Pass  *
Secret¡© ¡Ê´ÉÍý¼Ô¤Ë¤À¤±É½¼¨¡Ë
¤³¤Î¥³¥á¥ó¥È¤Ï´ÉÍý¿Í¤Î¤ß±ÜÍ÷¤Ç¤­¤Þ¤¹
  • #
  • 2008.03.25(Tue)
  • Edit

¥×¥í¥°¥é¥ß¥ó¥°´ØÏ¢¸¡º÷



¥×¥í¥°¥é¥ß¥ó¥°¤ä ExcelVBA ¤Ë´ØÏ¢¤·¤¿¸¡º÷¤Ë¤Ï¤³¤Á¤é¤ò¤É¤¦¤¾¡£

¥á¡¼¥ë¥Õ¥©¡¼¥à

±Æ»Â¤Ëʪ¿½¤¹¤È¤¤¤¦Êý¤Ï¤³¤Á¤é

̾Á°¡¡:
¥á¡¼¥ë:
·ï̾¡¡:
ËÜʸ¡¡:

²Äǽ¤Ê¸Â¤êÍ×˾¤Ë¤Ï±þ¤¨¤Þ¤¹¤¬¡¢É¬¤ºÊÖ¿®¤ä²óÅú¤¬¤Ç¤­¤ë¤³¤È¤ò¡¢Êݾ㤹¤ë¤â¤Î¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£
¤´Î»¾µ¤¯¤À¤µ¤¤¡£

£Ã£è£á£ð£ô£å£ò£ó

¥³¥ó¥Æ¥ó¥Ä°ìÍ÷


¢£Chapter °ìÍ÷¢£
    Á´¤Æ¤ÎChapter¤Î°ìÍ÷¤Ç¤¹¡£
    Ä¾ÀÜ¥¢¥¯¥»¥¹¤·¤¿¤¤Êý¤Ï¤³¤Á¤é¤ò¤´ÍøÍѲ¼¤µ¤¤¡£

    £Ã£è£á£ð£ô£å£ò.£± [ ÃΤäƤª¤¯¤Ù¤­¿´ÆÀ ]
    £Ã£è£á£ð£ô£å£ò.£² [ £Å£ø£ã£å£ì¤Ã¤Æ¤Ê¤ó¤À¤í¤¦ ]
    £Ã£è£á£ð£ô£å£ò.£³ [ £Å£ø£ã£å£ì¤Î´ðËܲèÌÌ ]
    £Ã£è£á£ð£ô£å£ò.£´ [ £Ö£Â£Á¤È¤Ï¡© ]
    £Ã£è£á£ð£ô£å£ò.£µ [ ¥â¥¸¥å¡¼¥ë¤Ë¤Ä¤¤¤Æ ]
    £Ã£è£á£ð£ô£å£ò.£¶ [ ÊÑ¿ô ]
    £Ã£è£á£ð£ô£å£ò.£· [ ÊÑ¿ô¤Î·¿¤ÈÀë¸À ]
    £Ã£è£á£ð£ô£å£ò.£¸ [ ¥×¥í¥·¡¼¥¸¥ã¤È¥¹¥³¡¼¥× ]
    £Ã£è£á£ð£ô£å£ò.£¹ [ ¥²¡¼¥à¤Ä¤¯¤ëÍÍ¡¹¤Ê¼êË¡ ]
    £Ã£è£á£ð£ô£å£ò.£±£° [ ¥æ¡¼¥¶¡¼¥Õ¥©¡¼¥à ]
    £Ã£è£á£ð£ô£å£ò.£±£± [ ¥×¥í¥Ñ¥Æ¥£¥¦¥£¥ó¥É¥¦ ]
    £Ã£è£á£ð£ô£å£ò.£±£² [ Íð¿ô ]
    £Ã£è£á£ð£ô£å£ò.£±£³ [ ¾ò·ïʬ´ô ]
    £Ã£è£á£ð£ô£å£ò.£±£´ [ ¥²¡¼¥à²èÌ̤Υǥ¶¥¤¥ó ]
    £Ã£è£á£ð£ô£å£ò.£±£µ [ ¥³¡¼¥Éµ­½Ò¤Î´ðËܺîË¡ ]
    £Ã£è£á£ð£ô£å£ò.£±£¶ [ ¤¸¤ã¤ó¤±¤ó¥²¡¼¥à¡§£± ̾Á°¤ò¤Ä¤±¤ë ]
    £Ã£è£á£ð£ô£å£ò.£±£· [ ¤¸¤ã¤ó¤±¤ó¥²¡¼¥à¡§£² ¥Õ¥©¡¼¥à¤Îµ¯Æ° ]
    £Ã£è£á£ð£ô£å£ò.£±£¸ [ ¤¸¤ã¤ó¤±¤ó¥²¡¼¥à¡§£³ Íð¿ô¤Î¼ï ]
    £Ã£è£á£ð£ô£å£ò.£±£¹ [ ¤¸¤ã¤ó¤±¤ó¥²¡¼¥à¡§£´ ¥¤¥Ù¥ó¥È ]
    £Ã£è£á£ð£ô£å£ò.£²£° [ ¤¸¤ã¤ó¤±¤ó¥²¡¼¥à¡§£µ °ú¿ô ]
    £Ã£è£á£ð£ô£å£ò.£²£± [ ¤¸¤ã¤ó¤±¤ó¥²¡¼¥à¡§£¶ ÌòȽÄê ]
    £Ã£è£á£ð£ô£å£ò.£²£² [ ¤¸¤ã¤ó¤±¤ó¥²¡¼¥à¡§£· ͽ¬¤ÈÀ©¸Â ]
    £Ã£è£á£ð£ô£å£ò.£²£³ [ With¥¹¥Æ¡¼¥È¥á¥ó¥È ]
    £Ã£è£á£ð£ô£å£ò.£²£´ [ ²èÁü¤òɽ¼¨¤µ¤»¤ë ]
    £Ã£è£á£ð£ô£å£ò.£²£µ [ ²èÁüɽ¼¨¤ÎȯŸ·Á ]
    £Ã£è£á£ð£ô£å£ò.£²£¶ [ ·«¤êÊÖ¤·½èÍý Forʸ ]
    £Ã£è£á£ð£ô£å£ò.£²£· [ ·«¤êÊÖ¤·½èÍý Do¡ÁLoopʸ ]
    £Ã£è£á£ð£ô£å£ò.£²£¸ [ Exit¥¹¥Æ¡¼¥È¥á¥ó¥È ]
    £Ã£è£á£ð£ô£å£ò.£²£¹ [ ¥Õ¥©¡¼¥à¾å¤Î°ÌÃÖ¾ðÊó ]
    £Ã£è£á£ð£ô£å£ò.£³£° [ API´ðÁÃÃμ± ]
    £Ã£è£á£ð£ô£å£ò.£³£± [ APIÊä­Ãμ± ]
    £Ã£è£á£ð£ô£å£ò.£³£² [ ¥á¥¤¥ó¥ë¡¼¥×¤ò¹Í¤¨¤ë ]
    £Ã£è£á£ð£ô£å£ò.£³£³ [ Ʊ´ü½èÍý¤Î³µÇ° ]
    £Ã£è£á£ð£ô£å£ò.£³£´ [ °Üư½èÍý¤½¤Î£±¡§²èÌÌÀßÄê¤È¹Í¤¨Êý ]
    £Ã£è£á£ð£ô£å£ò.£³£µ [ °Üư½èÍý¤½¤Î£²¡§DoEvents ]
    £Ã£è£á£ð£ô£å£ò.£³£¶ [ °Üư½èÍý¤½¤Î£³¡§¥­¡¼ÆþÎÏȽÄêAPI ]
    £Ã£è£á£ð£ô£å£ò.£³£· [ ¾ò·ïʬ´ô¤Î¤µ¤é¤Ê¤ëõµá Select Case ]
    £Ã£è£á£ð£ô£å£ò.£³£¸ [ ¥¢¥Ë¥á¡¼¥·¥ç¥ó ]
    £Ã£è£á£ð£ô£å£ò.£³£¹ [ ÇÛÎóÊÑ¿ô ]
    £Ã£è£á£ð£ô£å£ò.£´£° [ ¥²¡¼¥à¤Î½é´ü²½ ]
    £Ã£è£á£ð£ô£å£ò.£´£± [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£±¡§¥²¡¼¥àÀß·× ]
    £Ã£è£á£ð£ô£å£ò.£´£² [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£²¡§¥á¥¤¥ó¥×¥í¥»¥¹ ]
    £Ã£è£á£ð£ô£å£ò.£´£³ [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£³¡§¹½Â¤ÂÎ ]
    £Ã£è£á£ð£ô£å£ò.£´£´ [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£´¡§Äê¿ô ]
    £Ã£è£á£ð£ô£å£ò.£´£µ [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£µ¡§¥×¥ì¥¤¥ä¡¼¥­¥ã¥é¥¯¥¿¡¼ ]
    £Ã£è£á£ð£ô£å£ò.£´£¶ [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£¶¡§¥·¥ç¥Ã¥È¤ò·â¤Ä­¡ ]
    £Ã£è£á£ð£ô£å£ò.£´£· [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£·¡§¥·¥ç¥Ã¥È¤ò·â¤Ä­¢ ]
    £Ã£è£á£ð£ô£å£ò.£´£¸ [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£¸¡§Mod±é»»»Ò¤Î³èÍÑ ]
    £Ã£è£á£ð£ô£å£ò.£´£¹ [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£¹¡§Å¨¥­¥ã¥é¥¯¥¿¡¼Åоì ]
    £Ã£è£á£ð£ô£å£ò.£µ£° [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£±£°¡§¾×ÆÍȽÄê ]
    £Ã£è£á£ð£ô£å£ò.£µ£± [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£±£±¡§¾×ÆÍ¤Î¼ÂÂÎ ]
    £Ã£è£á£ð£ô£å£ò.£µ£² [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£±£²¡§Å¨¤Î¹¶·â ]
    £Ã£è£á£ð£ô£å£ò.£µ£³ [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£±£³¡§Çúȯ¥¨¥Õ¥§¥¯¥È ]
    £Ã£è£á£ð£ô£å£ò.£µ£´ [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£±£´¡§»Äµ¡¿ôɽ¼¨­¡ ]
    £Ã£è£á£ð£ô£å£ò.£µ£µ [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£±£µ¡§»Äµ¡¿ôɽ¼¨­¢ ]
    £Ã£è£á£ð£ô£å£ò.£µ£¶ [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£±£¶¡§¥¹¥³¥¢¤Îɽ¼¨ ]
    £Ã£è£á£ð£ô£å£ò.£µ£· [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£±£·¡§¥¿¥¤¥È¥ë²èÌÌ ]
    £Ã£è£á£ð£ô£å£ò.£µ£¸ [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£±£¸¡§¥Ü¥¹¥­¥ã¥é¥¯¥¿¡¼ ]
    £Ã£è£á£ð£ô£å£ò.£µ£¹ [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£±£¹¡§ºÇ¸å¤Î»Å¾å¤²¤Ø ]
    £Ã£è£á£ð£ô£å£ò.£¶£° [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£²£°¡§¤¤¤è¤¤¤è´°À®STG ]
    £Ã£è£á£ð£ô£å£ò.£¶£± [ ¥«¡¼¥É¥²¡¼¥à¤Ç»È¤¨¤ë¤á¤¯¤ê¸ú²Ì ]
    £Ã£è£á£ð£ô£å£ò.£¶£² [ ¥é¥¸¥¢¥ó¤È³ÑÅÙ ]
    £Ã£è£á£ð£ô£å£ò.£¶£³ [ ¥é¥¸¥¢¥ó¤Î³èÍÑ¡§±ß±¿Æ° ]
    £Ã£è£á£ð£ô£å£ò.£¶£´ [ ¥é¥¸¥¢¥ó¤Î³èÍÑ¡§Ç¤°Õ¤Î³ÑÅÙ¤Ø°ÜÆ°¤¹¤ë ]
    £Ã£è£á£ð£ô£å£ò.£¶£µ [ API¤Ë¤è¤ë¥µ¥¦¥ó¥ÉºÆÀ¸¡§´ðÁà ]
    £Ã£è£á£ð£ô£å£ò.£¶£¶ [ API¤Ë¤è¤ë¥µ¥¦¥ó¥ÉºÆÀ¸¡§MIDI¤È¿½ÅºÆÀ¸ ]
    £Ã£è£á£ð£ô£å£ò.£¶£· [ API¤Ë¤è¤ë¥µ¥¦¥ó¥ÉºÆÀ¸¡§MCI¥³¥Þ¥ó¥É¤È¥ë¡¼¥×ºÆÀ¸ ]
    £Ã£è£á£ð£ô£å£ò.£¶£¸ [ Function ¥×¥í¥·¡¼¥¸¥ã ]
    £Ã£è£á£ð£ô£å£ò.£¶£¹ [ ÃÍÅϤ·¤È»²¾ÈÅϤ· ]
    £Ã£è£á£ð£ô£å£ò.£·£° [ ¥Ç¥Ð¥Ã¥°£±¡§¥¤¥ß¥Ç¥£¥¨¥¤¥È¥¦¥£¥ó¥É¥¦ ]
    £Ã£è£á£ð£ô£å£ò.£·£± [ ¥Ç¥Ð¥Ã¥°£²¡§¥í¡¼¥«¥ë¥¦¥£¥ó¥É¥¦ ]
    £Ã£è£á£ð£ô£å£ò.£·£² [ ¥Ç¥Ð¥Ã¥°£³¡§¥³¡¼¥É¼Â¹Ô¤ÎÃæÃÇ ]
    £Ã£è£á£ð£ô£å£ò.£·£³ [ ¥ª¥Ö¥¸¥§¥¯¥È¤Ã¤Æ¤Ê¤ó¤À ]
    £Ã£è£á£ð£ô£å£ò.£·£´ [ ¥×¥í¥Ñ¥Æ¥£¡¦¥á¥½¥Ã¥É¡¦¥¤¥Ù¥ó¥È ]
    £Ã£è£á£ð£ô£å£ò.£·£µ [ ¥ª¥Ö¥¸¥§¥¯¥ÈÊÑ¿ô ]
    £Ã£è£á£ð£ô£å£ò.£·£¶ [ ¥ª¥Ö¥¸¥§¥¯¥È¤È¥³¥ì¥¯¥·¥ç¥ó ]
    £Ã£è£á£ð£ô£å£ò.£·£· [ ÆÃ¼ì¤Ê·«¤êÊÖ¤·¡§For Each ]
    £Ã£è£á£ð£ô£å£ò.£·£¸ [ ¥¨¥é¡¼½èÍý ]
    £Ã£è£á£ð£ô£å£ò.£·£¹ [ On Error ¤È GoToʸ ]
    £Ã£è£á£ð£ô£å£ò.£¸£° [ Resume¥¹¥Æ¡¼¥È¥á¥ó¥È ]
    £Ã£è£á£ð£ô£å£ò.£¸£± [ ¥Ð¥¤¥È¤È¥Ó¥Ã¥È ]
    £Ã£è£á£ð£ô£å£ò.£¸£² [ ¥¦¥£¥ó¥É¥¦¥á¥Ã¥»¡¼¥¸¤È¥¤¥Ù¥ó¥È ]
    £Ã£è£á£ð£ô£å£ò.£¸£³ [ ʸ»úÎó¤Î´ðÁà ]
    £Ã£è£á£ð£ô£å£ò.£¸£´ [ ʸ»úÎóÁàºî­¡ ]
    £Ã£è£á£ð£ô£å£ò.£¸£µ [ ʸ»úÎóÁàºî­¢ ]
    £Ã£è£á£ð£ô£å£ò.£¸£¶ [ ¥¿¥¤¥Ô¥ó¥°¥²¡¼¥à£±¡§»ÅÍͤò·è¤á¤ë ]
    £Ã£è£á£ð£ô£å£ò.£¸£· [ ¥¿¥¤¥Ô¥ó¥°¥²¡¼¥à£²¡§¥­¡¼ÆþÎϸ¡ÃÎ ]
    £Ã£è£á£ð£ô£å£ò.£¸£¸ [ ¥¿¥¤¥Ô¥ó¥°¥²¡¼¥à£³¡§Ê¸»úÎó¾È¹ç ]
    £Ã£è£á£ð£ô£å£ò.£¸£¹ [ ¥¿¥¤¥Ô¥ó¥°¥²¡¼¥à£´¡§È½Äê´Ø¿ô ]


    ¥³¡¼¥É¤äVBA¤Ë´Ø¤¹¤ë¼ÁÌä¤Ê¤É¤Ï¥µ¥Ý¡¼¥È·Ç¼¨ÈÄ¡ÊÊ̴ۡˤޤǤªµ¤·Ú¤Ë¤É¤¦¤¾¡£




fc2 seotool Excel VBA ¥²¡¼¥à ¥×¥í¥°¥é¥ß¥ó¥° ¹ÖºÂ

By FC2¥Ö¥í¥°

º£¤¹¤°¥Ö¥í¥°¤òºî¤í¤¦¡ª

Powered By FC2¥Ö¥í¥°

Counter

DigitalClock

¥×¥í¥Õ¥£¡¼¥ë

Author:
±Æ»Â
£Å£ø£ã£å£ì¤ò¤³¤è¤Ê¤¯°¦¤¹¤ë¤Ò¤È¡£
£²¡Á£³Ç¯¤Û¤ÉÁ°¤«¤é¡¢£Å£ø£ã£å£ì£Ö£Â£Á¤Ë¤è¤ë¥²¡¼¥à¥×¥í¥°¥é¥ß¥ó¥°¤ËÌܳФá¤ë¡£
ÆÀ°Õ¤Ê³«È¯Ê¬Ìî¤Ï¥¿¥¤¥Ô¥ó¥°¥²¡¼¥à(¼«¾Î)¡£

IT¥Ö¥í¥°¥é¥ó¥­¥ó¥°

IT´ØÏ¢¤Î¥Ö¥í¥°ÀìÍÑ¥é¥ó¥­¥ó¥°¤Ç¤¹¡£ Îɤ«¤Ã¤¿¤é¤ò¥¯¥ê¥Ã¥¯¤ª´ê¤¤¤·¤Þ¤¹¡£

edita


edita.jp¡Ú¥¨¥Ç¥£¥¿¡Û


From Omoituki