下記の質問をしました。
更に下の回答を頂き入力しましたが、
入力し実行すると「実行時エラー438」
オブジェクトは、このプロパティまたはメソッドをサポートしていません。となります。
色々と調べて実行したのですが解決しませんでした。
よろしくお願いします。
ここから>
エクセル2016です。
B3セルに9:00
C3セルに15:00と入力します。
するとE3セルからK3セルまで線が引かれる
B4セルに15:00
C4セルに22:30と入力します。
するとL4からR4の半分まで線が引かれる。
可能でしょうか?
よろしくお願いいたします。
Sub hiku()
ActiveSheet.Shapes.SelectAll
Selection.ShapeRange.Delete
For i = 3 To 30
If Cells(i, 2) = "" Then Exit Sub
If Cells(i, 3) = "" Then Exit Sub
j0 = i
jm = (Cells(j0, 1).Height) / 2 + Cells(j0, 1).Top
j1 = Hour(Cells(j0, 2)) - 4
j2 = (Cells(j0, j1).Width) * Minute(Cells(j0, 2)) / 60 + Cells(j0, j1).Left
k1 = Hour(Cells(j0, 3)) - 4
k2 = (Cells(j0, k1).Width) * Minute(Cells(j0, 3)) / 60 + Cells(j0, k1).Left
With ActiveSheet.Shapes.AddLine(j2, jm, k2, jm).Line
.ForeColor.SchemeColor = 53 ' 線の色を変えました
.Weight = 3
.EndArrowheadStyle = msoArrowheadTriangle
End With
Next i
End Sub
<ここまで
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
ki-aaaさんのコードで結構です。
なお、次のコードを挟むのでもOKです。
初歩的にいい加減なコードを書いて済みませんでした。
Sub hiku()
ActiveSheet.Shapes.SelectAll
If VarType(Selection) = vbObject Then
Selection.ShapeRange.Delete
End If
For i = 3 To 30
If Cells(i, 2) = "" Then Exit Sub
If Cells(i, 3) = "" Then Exit Sub
~~~以下は同じ~~~
No.1
- 回答日時:
下の一行を三行に変更してください。
>Selection.ShapeRange.Delete
↓
On Error Resume Next
Selection.ShapeRange.Delete
On Error GoTo 0
修正の意図
削除しようとしたが、削除対象がないので、エラーがでた。
なので、エラーを無視するようにした。
このコードを書いた人は素晴らしい。
簡潔でわかり易い。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルで同じ数字同士を自動で線で結ぶVBAを教えてください 6 2022/04/26 23:13
- Visual Basic(VBA) vbaの計算 if elseと範囲について 6 2022/11/26 01:49
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 2 2022/06/25 22:42
- Excel(エクセル) エクセルVBAでオブジェクトが必要です 2 2022/09/10 16:37
- Visual Basic(VBA) セルS2に入力した「月」と一致したB列の右隣へセルS110の値を転記する下記マクロを実行するとエラー 2 2022/12/06 17:32
- Visual Basic(VBA) マクロ実行時、自動で背景色を変えたい。 C列にあるチェックボックスをチェックするとB列に「TRUE」 4 2022/11/08 11:14
- Visual Basic(VBA) ExcelVBAのマクロについて。 9 2022/05/04 14:50
- Visual Basic(VBA) VBAで重複した値のセルに色付けをしたい 1 2022/11/02 16:12
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Excel(エクセル) 日付で矢印マクロ 4 2023/07/25 16:47
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
貼り付けで複数セルに貼り付けたい
-
エクセルで指定したセルのどれ...
-
【エクセル】IF関数 Aまたは...
-
Excelでのコメント表示位置
-
エクセル 足して割る
-
Excelで数式内の文字色を一部だ...
-
【Excel】 セルの色での判断は...
-
EXCEL VBA セルに既に入...
-
エクセル オートフィルタで絞...
-
エクセルの一つのセルに複数の...
-
枠に収まらない文字を非表示に...
-
エクセルの書式設定の表示形式...
-
対象セル内(複数)が埋まった...
-
Excel2003 の『コメント』の編...
-
(Excel)数字記入セルの数値の後...
-
エクセル “13ヶ月”を“1年1ヶ月...
-
エクセルの関数VLOOKUP...
-
エクセルで休憩時間を引く時と...
-
excelのCOUNTIF関数で、『範囲=...
-
エクセルのセルの枠を超えて文...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセル 足して割る
-
【エクセル】IF関数 Aまたは...
-
エクセルで指定したセルのどれ...
-
Excelで数式内の文字色を一部だ...
-
Excelでのコメント表示位置
-
貼り付けで複数セルに貼り付けたい
-
対象セル内(複数)が埋まった...
-
セルをクリック⇒そのセルに入力...
-
【Excel】 セルの色での判断は...
-
エクセルの一つのセルに複数の...
-
EXCEL VBA セルに既に入...
-
エクセル “13ヶ月”を“1年1ヶ月...
-
エクセル オートフィルタで絞...
-
エクセルのセルの枠を超えて文...
-
excelのCOUNTIF関数で、『範囲=...
-
(Excel)数字記入セルの数値の後...
-
枠に収まらない文字を非表示に...
-
Excel2003 の『コメント』の編...
-
Excel 例A(1+9) のように番地の...
-
複数のセルのいずれかに数字が...
おすすめ情報