EXCEL VBA ソースコードメモ

これは本当にメモ。

暇なときに簡単なゲームとか作ってたらなんだかEXCEL VBAに興味が。
こういうのがみんなやりたいわけだよ!
遊びたいのだよ技術で!
っと俺は思う。

Sub excect()
Set beginRow = Range(“A18″)
Set endRow = Range(“B18″)

If beginRow = endRow Then
Else
‘MsgBox beginRow & endRow
endRow = endRow + 1
MsgBox “A” & endRow
Rows(endRow).Insert
End If

End Sub

Sub ボタン1_Click()
Call delete
End Sub
Sub ボタン2_Click()
Call line
End Sub
Sub ボタン3_Click()
Call excect
End Sub

Sub macro1()

‘ Macro1 Macro

‘ ShortCutKey Ctrl + q
ActiveCell.Offset(0, 4).Select
ActiveSheet.Paste

End Sub

Sub Macro2()

‘ Macro2 Macro

‘ ShortCutKey Ctrl + w

ActiveCell.Offset(0, 2).Select
Selection.EntireColumn.Insert

End Sub

Sub G_ボタン1_Click()

Dim player As Range
Dim enemy As Range

Set player = Range(“E15″)
Set enemy = Range(“F15″)

‘player = Int(3 * Rnd + 1)
enemy = Int(11 * Rnd + 1)

‘TextBox1 = “ここに入力してください。”

If enemy = 1 And player = 2 Then Range(“e18″).Value = “あなたの負けです。”
‘敵が「グー」自分が「チョキ」を出しているならば「あなたの負けです。」と表示させます。

If enemy = 1 And player = 3 Then Range(“e18″).Value = “あなたの勝ちです。”
‘敵が「グー」自分が「パー」を出しているならば「あなたの勝ちです。」と表示させます。

If enemy = 2 And player = 1 Then Range(“e18″).Value = “あなたの勝ちです。”
‘敵が「チョキ」自分が「グー」を出しているならば「あなたの勝ちです。」と表示させます。

If enemy = 2 And player = 3 Then Range(“e18″).Value = “あなたの負けです。”
‘敵が「チョチ」自分が「パー」を出しているならば「あなたの負けです。」と表示させます。

If enemy = 3 And player = 1 Then Range(“e18″).Value = “あなたの負けです。”
‘敵が「パー」自分が「グー」を出しているならば「あなたの負けです。」と表示させます。

If enemy = 3 And player = 2 Then Range(“e18″).Value = “あなたの勝ちです。”

‘If player = enemy Then
‘ Range(“e18″).Value = “あいこ”
‘ else if player <> enemy then
‘Range(“e18″).Value = “ABC”

End Sub
Sub G_ボタン4_Click()
Dim player As Range
Dim enemy As Range
Dim playerPoint As Range
Dim enemyPoint As Range

Set player = Range(“a43″)
Set enemy = Range(“b43″)

Set playerPoint = Range(“a49″)
Set enemyPoint = Range(“b49″)

player = player + Int(11 * Rnd + 1)
enemy = enemy + Int(11 * Rnd + 1)

If enemy = 21 And player = 21 Then
Range(“e45″).Value = “引き分けです。player=” & player & ” enemy=” & enemy
End If

If enemy = 21 And player <= 20 Then Range("e45").Value = "あなたの負けです。player=" & player & " enemy=" & enemy enemyPoint = enemyPoint + 1 End If If enemy >= 20 And player = 21 Then
Range(“e45″).Value = “あなたの勝ちです。player=” & player & ” enemy=” & enemy
playerPoint = playerPoint + 1
End If

If enemy <= 20 And player <= 20 Then Range("e45").Value = "カードを引いてください。" End If 'If enemy >= 22 And player <= 22 Then 'Range("e45").Value = "enemyのバーストです。あなたの勝ちです。player=" & player & " enemy=" & enemy ' player = 0 ' enemy = 0 ' playerPoint = playerPoint + 1 'End If If enemy <= 22 And player >= 22 Then
Range(“e45″).Value = “playerのバーストです。あなたの負けです。player=” & player & ” enemy=” & enemy
player = 0
enemy = 0
enemyPoint = enemyPoint + 1
End If

If enemy >= 22 And player >= 22 Then
Range(“e45″).Value = “お互いバーストです。引き分けです。player=” & player & ” enemy=” & enemy
player = 0
enemy = 0
End If

End Sub
Sub G_ボタン5_Click()

Dim player As Range
Dim enemy As Range
Dim playerPoint As Range
Dim enemyPoint As Range

Set player = Range(“a43″)
Set enemy = Range(“b43″)

Set playerPoint = Range(“a49″)
Set enemyPoint = Range(“b49″)

If player = 0 Then
Range(“e45″).Value = “カードを引いてください。”
End If

If enemy = player Then
Range(“e45″).Value = “引き分けです。player=” & player & ” enemy=” & enemy
player = 0
enemy = 0
End If

If enemy > player Then
Range(“e45″).Value = “あなたの負けです。player=” & player & ” enemy=” & enemy
enemyPoint = enemyPoint + 1
player = 0
enemy = 0
End If

If enemy < player Then Range(“e45″).Value = “あなたの勝ちです。player=” & player & ” enemy=” & enemy playerPoint = playerPoint + 1 player = 0 enemy = 0 End If End Sub

Excel VBA セルの削除とかをマクロでやると作業効率UP!

ポイントは、マクロをショートカットキーに割り当てます!
これをすることによって、簡単なマクロを色々作ってプチ作業効率化ができます!
っといってもEXCEL VBAはほぼ素人な私ですが・・・・。

というか素人でも割りかし簡単にできちゃいます!

これとか、ちょっとセルを削除したい時に使えます。
Offsetの部分を変えて、deleteの数とか変えるだけで好きなようにできます。
こういうのがEXCEL VBAの醍醐味だと俺は思う。

Sub delete()

‘ Macro2 Macro

‘ ShortCutKey Ctrl + p

‘ActiveCell.Offset(1, 0).Select
‘Selection.EntireColumn.EntireRow.delete

ActiveCell.Offset(1, 0).Select
Selection.EntireRow.delete
Selection.EntireRow.delete
Selection.EntireRow.delete
ActiveCell.Offset(2, 0).Select

End Sub

Sub oneRowDelete()
ActiveCell.Offset(1, 0).Select
Selection.EntireRow.delete
End Sub

Sub Delete_two()
ActiveCell.Offset(1, 0).Select
Selection.EntireRow.delete
Selection.EntireRow.delete
Selection.EntireRow.delete
Selection.EntireRow.delete
ActiveCell.Offset(2, 0).Select
End Sub

Excel VBA 印刷範囲の変更を手でやるのがめんどくさいのでマクロでやる

こんな感じでやれば出来る。

Sub line()
Dim startRow As Range
Dim endRow As Range

Set startRow = Range(“F7″)
Set endRow = Range(“F8″)

‘MsgBox startRow
‘MsgBox endRow

‘ActiveSheet.PageSetup.PrintArea = “$A$1:$E$200″
ActiveSheet.PageSetup.PrintArea = “” & startRow & “:” & endRow & “”

End Sub
Sub ボタン1_Click()
Call delete
End Sub
Sub ボタン2_Click()
Call line
End Sub

mysqlのバージョンアップ(rpmパッケージをwgetして、パッケージを一個づつインストール)

# wget ftp://rpmfind.net/linux/remi/fedora/6/remi/i386/mysql-libs-5.5.16-1.fc6.remi.i386.rpm
# yum install mysql-libs-5.5.16-1.fc6.remi.i386.rpm
# wget ftp://rpmfind.net/linux/remi/fedora/6/remi/i386/mysql-5.5.16-1.fc6.remi.i386.rpm
# yum install mysql-5.5.16-1.fc6.remi.i386.rpm
# wget ftp://rpmfind.net/linux/remi/fedora/6/remi/i386/mysql-server-5.5.16-1.fc6.remi.i386.rpm
# yum install mysql-server-5.5.16-1.fc6.remi.i386.rpm
エラー:perl-DBD-MySQL-3.0007-2.el5.i386 がない
# yum install perl-DBD-MySQL-3.0007-2.el5.i386
エラー:libmysqlclient.so.15 がない
# wget ftp://rpmfind.net/linux/remi/fedora/6/remi/i386/mysqlclient15-5.0.67-1.fc6.remi.i386.rpm
# yum install mysqlclient15-5.0.67-1.fc6.remi.i386.rpm –> OK
# yum install perl-DBD-MySQL-3.0007-2.el5.i386 –> OK
# yum install mysql-server-5.5.16-1.fc6.remi.i386.rpm –> OK