変数を宣言し、以下のプロシージャ名で使いたいのですが、変数を使うことができないようです。
コードの記述法にミスがあるのかと思いますが、どなたかご教授いただけませんでしょうか?
Dim レストランA開始行 As Long
レストランA開始行 = 12
Dim レストランA終了行 As Long
レストランA終了行 = 21
Dim レストランB開始行 As Long
レストランB開始行 = 24
Dim レストランB終了行 As Long
レストランB終了行 = 43
Dim レストランC開始行 As Long
レストランC開始行 = 44
Dim レストランC終了行 As Long
レストランC終了行 = 103
<変更前>
SUb hihyouji
Dim c As Range, myRng As Range, myArea As Range
Set myArea = Range("G14:G21,G26:G103,G107:G134")
For Each c In myArea
If c = "" Then
If myRng Is Nothing Then
Set myRng = c
Else
Set myRng = Union(myRng, c)
End If
End If
Next c
If Not myRng Is Nothing Then
myRng.EntireRow.Hidden = True
End If
End Sub
<変更後>
SUb hihyouji
Dim c As Range, myRng As Range, myArea As Range
Set myArea = Range("G&レストランA開始行&":"&G&レストランA終了行,G&レストランB開始行&":"&G&レストランB終了行,G&レストランC開始行&":"&G&レストランC終了行,")
For Each c In myArea
If c = "" Then
If myRng Is Nothing Then
Set myRng = c
Else
Set myRng = Union(myRng, c)
End If
End If
Next c
If Not myRng Is Nothing Then
myRng.EntireRow.Hidden = True
End If
End Sub
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
>Dim レストランA開始行 As Long
>レストランA開始行 = 12
>Dim レストランA終了行 As Long
>レストランA終了行 = 21
で、
>Set myArea = Range("G&レストランA開始行&":"&G&レストランA終了行,G&レストランB開始行&":"&G&レストランB終了行,G&レストランC開始行&":"&G&レストランC終了行,")
は……
「"G&レストランA開始行&"」が「"G12"」になることを期待していますか?
もしかして。
「"G"&レストランA開始行&":G"&レストランA終了行&",G"&レストランB開始行&":G"&レストランB終了行&",G"&レストランC開始行&":G"&レストランC終了行」
の間違いじゃないですかね?
ありがとうございました!
目的通りに動かすことができました。
文字列と結合演算子の使い方をもっと学ばないといけないなと実感しました。
心より感謝申し上げます。
No.2
- 回答日時:
こんにちは
どのようなエラーが出ているのか記してないので、明確に指摘はできませんが、
><変更前>
よりも上に記載の変数宣言と値の代入はどこに記していますか?
もしも、Sub外に記しているなら、Sub内に入れる必要があります。
ここで、エラーになっている可能性があります。
モジュール共通の変数として、変数宣言(Dim)を行うことは可能ですが、値の代入はできません。
もしも、定数として宣言したいのであれば、
Private Const 変数 As Long = 123
のようなことは可能です。
>Set myArea = Range( ~~ )
Rangeの括弧内は、演算結果としてセル範囲を示す文字列になっている必要があります。
(あるいは、Range(Cells(x1,y1), Cells(x2,y2))の形式の必要がありますが、今回はこれではないでしょう)
ご提示の括弧内はセル範囲を示すどころか、演算不能なものになっていますので、そこでエラーになっていると思われます。
括弧内のみを演算させてみて、結果が思った通りになっているかを確認してみてください。
(現状のままでは演算できないので、まずは、演算できる記述にすることが必要になります)
No.3
- 回答日時:
こんな難しいコードを書きながら、うまくいかないとは……。
(^^;こういう時は、コードをきれいに並べるところから始まります。
Private キーワードをつけるかはご自由に!
Const レストランA開始行 As Long = 12
Const レストランA終了行 As Long = 21
Const レストランB開始行 As Long = 4
Const レストランB終了行 As Long = 43
Const レストランC開始行 As Long = 44
Const レストランC終了行 As Long = 103
'<変更後>
Sub hihyouji()
Dim c As Range, myRng As Range, myArea As Range
Set myArea = Range(_
"G" & レストランA開始行 & ":" & "G" & レストランA終了行 & "," & _
"G" & レストランB開始行 & ":" & "G" & レストランB終了行 & "," & _
"G" & レストランC開始行 & ":" & "G" & レストランC終了行)
For Each c In myArea
If c = "" Then
If myRng Is Nothing Then
Set myRng = c
Else
Set myRng = Union(myRng, c)
End If
End If
Next c
でも、私なら、変数は、StA -> EnA, StB -> EnB, StC -> EnC とか省略しますね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 日付で矢印マクロ 4 2023/07/25 16:47
- Visual Basic(VBA) ExcelVBAで、index、match関数を使用して、指定範囲に出力したい 3 2022/10/18 21:53
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
- Visual Basic(VBA) 稀に1円合いません? Sheet1から金額と個数を貼り付ける下記コードで、金額を切り上げるコードを何 3 2022/09/05 15:11
- Visual Basic(VBA) Excel vbaについての質問 3 2023/04/18 16:14
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
- Excel(エクセル) VBAの指示の内容 昨日こちらでご教示頂いたのですが初心者な為、一つ一つの指示が何をやっているのかわ 2 2022/10/25 18:08
- Visual Basic(VBA) VBAが止まります。 1 2022/09/02 14:51
- Visual Basic(VBA) オブジェクトが見つかりません 1 2023/06/24 19:43
- Visual Basic(VBA) VBAが止まります。 3 2022/08/31 14:09
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アミルスタン羊の肉はどこで手...
-
皆さんおはようございます、呼...
-
東京駅内または周辺で更衣室の...
-
うかい亭みたいなお庭付の店教...
-
アメリカのレストランでは店員...
-
妊娠中の友達とのお出かけでオ...
-
ジョイフルとデニーズの関係
-
ラブホ利用する客って、なんで...
-
なぜレストランで末席に通され...
-
レストランの接客で自由席の案...
-
デザートのみの注文はNG!
-
2DKとは
-
志摩スペイン村に行きます、夕...
-
新横浜駅か横浜駅に叙々苑弁当...
-
読点のつけ方が分かりません。
-
銀座の高級寿司!どんな服を着...
-
教えていただきたいのですが...
-
叙々苑 東京オペラシティ53に...
-
フランス語「ビストロ」と「ブ...
-
テーブルマナー実践学習のため...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アミルスタン羊の肉はどこで手...
-
ジョイフルとデニーズの関係
-
なぜレストランで末席に通され...
-
読点のつけ方が分かりません。
-
妊娠中の友達とのお出かけでオ...
-
食堂とレストランの違い
-
うかい亭みたいなお庭付の店教...
-
ラブホ利用する客って、なんで...
-
アメリカのレストランでは店員...
-
銀座の高級寿司!どんな服を着...
-
木曽路(しゃぶしゃぶ)で気に...
-
チケットレストラン
-
レストランの接客で自由席の案...
-
飲食代に掛かるサービス料について
-
昔あった大阪・梅田のレストラ...
-
イタリア語で開店祝いを
-
レストランでボトルワインを持...
-
東京駅内または周辺で更衣室の...
-
2DKとは
-
羽田空港から見える赤い炎は?
おすすめ情報