アプリ版:「スタンプのみでお礼する」機能のリリースについて

vbaの書き方について

Dim i As・・・・のⅰとAsの間って開けるとださいですか


Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False

If Intersect(Target, Range("Z34, R51")) Is Nothing Then
Application.EnableEvents = True
Exit Sub
Else
Call テスト
End If
Application.EnableEvents = True
End Sub
_______________________________________

Sub テスト()

'検索値があるシート
Dim targetSheet As Worksheet
'対象データがあるシート
Dim seathSheet As Worksheet

Set targetSheet = Worksheets("検索")
Set seathSheet = Worksheets("表")

'検索地の日付
Dim hiduke As String

targetSheet.Activate

'過去のデータ削除
targetSheet.Range("R52:X54").ClearContents


hiduke = Format(Cells(34, 26), "yyyy") & "." & Format(Cells(34, 26), "MM")

Dim i As Long
Dim n As Long
Dim lastRow As Long
Dim lastCol As Long

lastRow = seathSheet.Cells(Rows.Count, 2).End(xlUp).Row

For i = 10 To lastRow

If seathSheet.Cells(i, 2) = targetSheet.Range("R51") Then
Exit For
End If
Next i

'対象の支払先会社名がない場合
If i = lastRow + 1 Then
MsgBox "一致する支払先会社名はありません"
Application.EnableEvents = True
Exit Sub
End If


lastCol = seathSheet.Cells(8, Columns.Count).End(xlToLeft).Column

For n = 7 To lastCol

If seathSheet.Cells(8, n) = hiduke Then
Exit For
End If
Next n

'対象の日付がない場合
If n = lastCol + 1 Then
MsgBox "一致する日付はありません"
Application.EnableEvents = True
Exit Sub
End If


targetSheet.Range("R52") = seathSheet.Cells(i, 3).Value
targetSheet.Range("R53") = "\" & Format(seathSheet.Cells(i, n).Value, "#,###") & ".-"
targetSheet.Range("R54") = "\" & Format(seathSheet.Cells(i + 1, n).Value, "#,###") & ".-"


End Sub

A 回答 (3件)

#2です


>Dim aa As Long
Dim aaa As Long
Dim bbb As Long
Dim strA As String
Dim strAA As String
この様な感じで記す場合があります

何の事か分かりませんでしたね 画像にします
別にダサくは無いかと・・・
「VBAについて」の回答画像3
    • good
    • 0

>Dim i As・・・・のⅰとAsの間って開けるとださいですか


意味を理解していなかったらごめんね
(私的には)
自分だけが書いたり、使用する場合
Dim i As Long, j As Long, ii As Long
Dim strA As String, strAA As String
こんな感じに記す事が多いですが、
構造体を作成したり、定数宣言を絡めたり、配布や複数人数で扱う場合は
Dim aa As Long
Dim aaa As Long
Dim bbb As Long
Dim strA As String
Dim strAA As String
この様な感じで記す場合があります

前者の書き方で 半角スペースを不要に入れるのは意図が分かりませんが
後者のような書き方の場合は、良いのでは無いかと思います
    • good
    • 0

こんにちは



>ⅰとAsの間って開けるとださいですか
スペースを空けるってことですよね?
空けないと「iAs ~~」になるので、一つの変数名として解釈されますけれど・・?
(Asは予約語のAsとは解釈されません)

※ 意味が違っていたならスルーしてください。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!