首页 > 解决方案 > 如何使用单元格边框创建甘特图 [VBA]

问题描述

我想通过将 VBA 边框添加到特定单元格中来在我的项目中创建一个甘特图样式,如下所示:

https://imgur.com/a/XqkKJxw

我试过这个脚本:

Public Sub DisegnaLineeGantt(ByVal riga As Long)

  Dim DataInizio, DataFine As Date
  Dim cell As Range
  Dim ultimaColonna As Long
  Dim rng As Range
  Dim rng2 As Range

  Set rng = Range(Cells(15, 11), Cells(15, ultimaColonna))
  Set rng2 = Range(Cells(riga, 11), Cells(riga, ultimaColonna))
  rng2.Borders.LineStyle = xlNone
  DataInizio = Cells(riga, 3)
  DataFine = Cells(riga, 4)
  ultimaColonna = Worksheets("Commesse").Columns.Count

  For Each cell In rng
    If DataInizio = cell Then
      Cells(riga, cell.Column).Borders(xlEdgeLeft).LineStyle = xlContinuous
      Cells(riga, cell.Column).Borders(xlEdgeTop).LineStyle = xlContinuous
      Cells(riga, cell.Column).Borders.Weight = xlMedium
    ElseIf DataFine = cell Then
      Cells(riga, cell.Column).Borders(xlEdgeRight).LineStyle = xlContinuous
      Cells(riga, cell.Column).Borders(xlEdgeTop).LineStyle = xlContinuous
      Exit For
    ElseIf DataInizio < cell And DataFine > cell Then
      Cells(riga, cell.Column).Borders(xlEdgeTop).LineStyle = xlContinuous
    End If
  Next

End Sub

标签: excelvbadategantt-chart

解决方案


推荐阅读