![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
こんにちは
補足説明があるのかと思いましたが、補足は無さそうなのと添付図がよく見えないので、わからないところはかなり適当に想定しています。
・表中の日付はすべてシリアル値で、かつ、項目の右側の日付は左から昇順に並んでいるものと仮定。
・表のセル位置等が不明なので、勝手に想定。
・描く図形のサイズ等が不明なので、#1様の意見を取り入れさらに色も変えています。
※ 添付図は図に示される表に対して、以下のマクロを実行した例
Sub Sample()
Dim rw As Long, dCount As Long, i As Integer, j As Long
Dim dRange As Range
Dim color, dStart, dEnd
Dim cStart As Long, cEnd As Long
Dim rTop As Single, rHeight As Single
Dim ht As Single, hh As Single
Dim wl As Single, ww As Single
color = Array(RGB(230, 50, 80), RGB(20, 120, 230), RGB(0, 150, 120), RGB(200, 170, 30))
dCount = Cells(3, Columns.Count).End(xlToLeft).Column - 9
If dCount < 2 Then Exit Sub
Set dRange = Cells(3, 10).Resize(1, dCount)
For rw = 4 To Cells(Rows.Count, 1).End(xlUp).Row
rTop = Rows(rw).Top
rHeight = Rows(rw).Height
For i = 0 To 3
dStart = Cells(rw, i * 2 + 2).Value
dEnd = Cells(rw, i * 2 + 3).Value
If (VarType(dStart) <> vbDate) Or (VarType(dEnd) <> vbDate) Or _
(dStart > dRange(dCount).Value) Or (dEnd < dRange(1).Value) Or _
(dStart > dEnd) Then Exit For
For j = 1 To dCount
If dEnd >= dRange(j).Value Then cEnd = j
Next j
For j = dCount To 1 Step -1
If dStart <= dRange(j).Value Then cStart = j
Next j
ht = (i * 2 + 1) * rHeight / 10 + rTop
hh = rHeight / 5
wl = dRange(cStart).Left
ww = dRange(cEnd).Left + dRange(cEnd).Width - wl
With ActiveSheet.Shapes.AddShape(msoShapeRectangle, wl, ht, ww, hh)
.Fill.Visible = msoTrue
.Fill.ForeColor.RGB = color(i)
.Fill.Transparency = 0
.Fill.Solid
.Line.Visible = msoFalse
End With
Next i
Next rw
End Sub
![「指定した2つの日付セルの間に長方形の図形」の回答画像2](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/1/587726_5a275311d862f/M.jpg)
No.1
- 回答日時:
もっと丁寧に説明しましょうよ。
4つの日付の間に4種類の図形って何ですか?
日付は行当たり8っつあるように見えるんですけど。
図形って自分で描いてるんだから、
どの図形をどう使ったのか、オーバーラップは
どう処理するのか、ちゃんと示しましょう。
そもそも太さをこのように変える意義って何ですか?
オーバーラップがあるなら高さをそれぞれ少しずつ
ずらせた直線にすれば重なりを
どうするかとかの考慮は必要ありません。
それに項目004かな?小さくてちゃんと読めないけど
それだけ開始日が5月って何?
どうしたいの?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelのマクロについて教えてください。 4 2022/05/31 14:07
- PowerPoint(パワーポイント) ExcelのVBAコードについて教えてください。 3 2022/05/25 14:32
- Excel(エクセル) エクセルのマクロでコピー後の貼り付け先を毎回指定したところにしたい 5 2022/08/12 10:47
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/21 09:28
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/01/23 11:02
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/01/11 11:47
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/03/02 08:40
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 11:27
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PowerPointで台形を描く方法
-
線を組み合わせた図形の塗りつ...
-
グーグルスプレッドシートの図...
-
pdf上に描画した図形が印刷され...
-
Illustratorでくくり括弧記号を...
-
AutoCADで渦巻きを描く方法
-
図形でしずく型を作りたい
-
Illustratorで白い部分のみを透...
-
Excel のバージョンによって、...
-
WORDで図に網掛けする方法は?
-
JWWで登録した図形の縮尺を変え...
-
エクセルVBAで図形のテキストを...
-
エクセルで図形を連動させたい
-
Excel2007で、図形の一部(一辺...
-
ゼンリン電子地図帳Zに関して
-
【Excel】図形の色をクリックす...
-
Excel 図形へのハイパーリンク
-
教えて下さい。過去のエクセル...
-
頭の中で折り紙を折るのは男性...
-
エクセルかワードの図形描画で...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PowerPointで台形を描く方法
-
線を組み合わせた図形の塗りつ...
-
グーグルスプレッドシートの図...
-
pdf上に描画した図形が印刷され...
-
AutoCADで渦巻きを描く方法
-
Excel のバージョンによって、...
-
ワードかエクセルの図形を使っ...
-
Illustratorでくくり括弧記号を...
-
Illustratorで白い部分のみを透...
-
図形でしずく型を作りたい
-
エクセルで図形を連動させたい
-
エクセル ユーザーフォームに...
-
ExcelのVBAコードについて教え...
-
クリックしたらパネルがめくれ...
-
Excel2003図-扇形を書く方法は...
-
おしえてgooに図形の問題を投稿...
-
Jw-cad の図形リストが表示でき...
-
ワードの基本図形で 角丸四角と...
-
【VBA】3個の図形をコピーしてS...
-
エクセルVBAで図形のテキストを...
おすすめ情報