スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

エクセルでセルをクリックしてカウンターもどきにする(2)

ハイパーリンクをクリックして作成したマクロを起動するには
http://www.excel-wing.com/study/jitumu/941

Workbook.SheetFollowHyperlink イベント (Excel)
http://msdn.microsoft.com/ja-jp/library/office/ff838573(v=office.15).aspx

エクセルVBAでアクティブセルの位置を獲得するコードを教えてください
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1218931622

Excel2010でBook1のセルA1にハイパーリンクをVBAで付けたいと思います。
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1185661976

Hyperlinks.Add メソッド (Excel)
http://msdn.microsoft.com/ja-jp/library/office/ff822490(v=office.15).aspx

下線の設定
http://www.officepro.jp/excelvba/cell_font/index4.html

できたのがこれ。

#ThisWorkbook
'*************************************************************************
'http://www.excel-wing.com/study/jitumu/941
'http://msdn.microsoft.com/ja-jp/library/office/ff838573(v=office.15).aspx
'http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1218931622
'指定範囲のセルにハイパーリンクを設定(設定先は自分自身)
'内容を"0"にしてカウンター初期化
'*************************************************************************
Sub Test1()
Dim lRet As Integer
lRet = MsgBox("全部消します。やり直しできません。印刷しました?", vbOKCancel, "確認")
If lRet = vbCancel Then
Exit Sub
End If

Dim i As Long
Dim lRange As Range
Set lRange = Range("B2:AF6")
For i = 1 To lRange.Count
With lRange.Cells(i)
ActiveSheet.Hyperlinks.Add _
Anchor:=lRange.Cells(i), _
Address:="", _
SubAddress:=.Address(RowAbsolute:=False, ColumnAbsolute:=False), _
ScreenTip:=" ", _
TextToDisplay:="0"
.Value = "0"
End With
Next

lRange.Font.Size = 12
lRange.Font.Underline = False
lRange.Font.Color = vbBlack
End Sub

'*************************************************************************
'ハイパーリンクがクリックされたら数字を一つ上げる
'*************************************************************************
Private Sub Workbook_SheetFollowHyperlink(ByVal Sh As Object, ByVal Target As Hyperlink)
With ActiveCell
.Value = .Value + 1
End With
End Sub


めちゃ短くなった。ハイパーリンクを設定するとセルの書式が何かに初期化されるのがちょっと面倒。
あと、クリック間隔が短くなると、セルが編集モードになってしまいます。で、それを解除しようと別のセルをうかつに触ると予定外のセルがカウント上がる罠にはまります。
関連記事
スポンサーサイト
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。