⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 form5.frm

📁 交通规划的课程设计
💻 FRM
字号:
VERSION 5.00
Object = "{5E9E78A0-531B-11CF-91F6-C2863C385E30}#1.0#0"; "MSFLXGRD.OCX"
Begin VB.Form Form5 
   BackColor       =   &H80000013&
   Caption         =   "交通量分布"
   ClientHeight    =   8160
   ClientLeft      =   165
   ClientTop       =   555
   ClientWidth     =   11880
   LinkTopic       =   "Form4"
   ScaleHeight     =   8160
   ScaleMode       =   0  'User
   ScaleWidth      =   12169.01
   StartUpPosition =   3  '窗口缺省
   Begin VB.CommandButton Command3 
      Caption         =   "生成Excel报表"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   10.5
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   375
      Left            =   9480
      TabIndex        =   4
      Top             =   7440
      Width           =   1935
   End
   Begin VB.CommandButton Command2 
      Caption         =   "转入交通量分配"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   10.5
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   375
      Left            =   6480
      TabIndex        =   3
      Top             =   7440
      Width           =   1815
   End
   Begin VB.CommandButton Command1 
      Caption         =   "计    算"
      BeginProperty Font 
         Name            =   "宋体"
         Size            =   10.5
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      Height          =   375
      Left            =   3480
      TabIndex        =   2
      Top             =   7440
      Width           =   1815
   End
   Begin MSFlexGridLib.MSFlexGrid MSFlexGrid1 
      Height          =   6015
      Left            =   120
      TabIndex        =   0
      Top             =   1200
      Width           =   11655
      _ExtentX        =   20558
      _ExtentY        =   10610
      _Version        =   393216
      Rows            =   25
      Cols            =   25
      ForeColorFixed  =   0
      GridColor       =   32768
      GridColorFixed  =   32768
   End
   Begin VB.Label Label2 
      BackColor       =   &H80000013&
      Caption         =   "重力模型法计算交通量分布"
      BeginProperty Font 
         Name            =   "方正琥珀简体"
         Size            =   24
         Charset         =   134
         Weight          =   400
         Underline       =   0   'False
         Italic          =   0   'False
         Strikethrough   =   0   'False
      EndProperty
      ForeColor       =   &H00004080&
      Height          =   615
      Left            =   3000
      TabIndex        =   1
      Top             =   240
      Width           =   6135
   End
End
Attribute VB_Name = "Form5"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False

Private Sub Command1_Click()

Const n = 23
 '计算Tij
For i = 1 To n
For j = 1 To n

If j = i Then
Select Case j
Case 1 To 4
T(i, j) = G(i) * 0.4
Case 5 To 13
T(i, j) = G(i) * 0.5
Case 14 To 18
T(i, j) = G(i) * 0.6
Case Else
T(i, j) = G(i) * 0.7
End Select
Else
T(i, j) = 0.183 * ((G(i) * A(j)) ^ 1.152) / ((C(i, j) * 1000) ^ 1.536)
End If
Next j
Next i

'用增长率法调整
Dim count
count = 0
Do
    For i = 1 To 23
        Sum1 = 0
          For j = 1 To 23
            Sum1 = Sum1 + T(i, j)
          Next j
       G2(i) = Sum1
    Next i
              
    For j = 1 To 23
        Sum2 = 0
        For i = 1 To 23
            Sum2 = Sum2 + T(i, j)
        Next i
        A2(j) = Sum2
    Next j
    
    For i = 1 To 23
        For j = 1 To 23
            sum3 = 0.5 * (G(i) / G2(i) + A(j) / A2(j))
            F(i, j) = sum3
            T(i, j) = T(i, j) * F(i, j)
        Next j
    Next i
    count = count + 1
 Loop While Abs(1 - sum3) > 0.0001

For i = 1 To 23
For j = 1 To 23
 MSFlexGrid1.Col = i
 MSFlexGrid1.Row = j
 MSFlexGrid1.Text = Format(T(i, j), ".00")
Next j
Next i

'填入调整后小区间发生与吸引量,交通总量
Sum = 0
 For i = 1 To 23
     MSFlexGrid1.Row = i
     MSFlexGrid1.Col = 24
     MSFlexGrid1.Text = Format(G2(i), ".00")
     Sum = Sum + G2(i)
 
 Next
 
  For i = 1 To 23
     MSFlexGrid1.Row = 24
     MSFlexGrid1.Col = i
 MSFlexGrid1.Text = Format(A2(i), ".00")
 Next
 
   MSFlexGrid1.Row = 24
 MSFlexGrid1.Col = 24
 MSFlexGrid1.Text = Format(Sum, ".0")
 
 MsgBox "计算完毕!循环次数:  " & count, , "计算完毕"
 
Command1.Enabled = False
Command2.Enabled = True
Command3.Enabled = True
End Sub


Private Sub Command2_Click()
Unload Form5
Form6.Show
End Sub

Private Sub Command3_Click()

Dim i As Integer
Dim j As Integer
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet

Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = True
Set xlBook = xlApp.Workbooks.Add
On Error Resume Next
Set xlBook = xlApp.Workbooks.Add
Set xlSheet = xlBook.Worksheets(1)

For i = 0 To 24 '网格数
MSFlexGrid1.Row = i
For j = 0 To 24
MSFlexGrid1.Col = j

If IsNull(MSFlexGrid1.Text) = False Then
xlSheet.Cells(i + 1, j + 1) = MSFlexGrid1.Text
End If
Next j
Next i
Exit Sub
End Sub

Private Sub Form_Load()

Command2.Enabled = False
Command3.Enabled = False

'以下填入表头
MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 0
 MSFlexGrid1.Text = "O\D"
 MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 1
 MSFlexGrid1.Text = "东城区"
  MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 2
 MSFlexGrid1.Text = "西城区"
 MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 3
 MSFlexGrid1.Text = "宣武区"
 MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 4
 MSFlexGrid1.Text = "崇文区"
  MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 5
 MSFlexGrid1.Text = "朝阳区"
  MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 6
 MSFlexGrid1.Text = "海淀区"
  MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 7
 MSFlexGrid1.Text = "丰台区"
 MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 8
 MSFlexGrid1.Text = "石景山区"
 MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 9
 MSFlexGrid1.Text = "门头沟区"
  MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 10
 MSFlexGrid1.Text = "通州区"
   MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 11
 MSFlexGrid1.Text = "顺义区"
 MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 12
 MSFlexGrid1.Text = "房山区"
  MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 13
 MSFlexGrid1.Text = "昌平区"
 MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 14
 MSFlexGrid1.Text = "大兴区"
 MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 15
 MSFlexGrid1.Text = "密云区"
  MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 16
 MSFlexGrid1.Text = "怀柔区"
  MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 17
 MSFlexGrid1.Text = "平谷区"
  MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 18
 MSFlexGrid1.Text = "延庆区"
 MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 19
 MSFlexGrid1.Text = "昌平以西"
 MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 20
 MSFlexGrid1.Text = "延庆以北"
  MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 21
 MSFlexGrid1.Text = "密云以东"
 MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 22
 MSFlexGrid1.Text = "廊坊-天津"
  MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 23
 MSFlexGrid1.Text = "大兴以南"
  MSFlexGrid1.Col = 0
 MSFlexGrid1.Row = 24
 MSFlexGrid1.Text = "目的地"
 
   MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 0
 MSFlexGrid1.Text = "O\D"
 MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 1
 MSFlexGrid1.Text = "东城区"
  MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 2
 MSFlexGrid1.Text = "西城区"
 MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 3
 MSFlexGrid1.Text = "宣武区"
 MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 4
 MSFlexGrid1.Text = "崇文区"
  MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 5
 MSFlexGrid1.Text = "朝阳区"
  MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 6
 MSFlexGrid1.Text = "海淀区"
  MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 7
 MSFlexGrid1.Text = "丰台区"
 MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 8
 MSFlexGrid1.Text = "石景山区"
 MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 9
 MSFlexGrid1.Text = "门头沟区"
  MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 10
 MSFlexGrid1.Text = "通州区"
   MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 11
 MSFlexGrid1.Text = "顺义区"
 MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 12
 MSFlexGrid1.Text = "房山区"
  MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 13
 MSFlexGrid1.Text = "昌平区"
 MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 14
 MSFlexGrid1.Text = "大兴区"
 MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 15
 MSFlexGrid1.Text = "密云区"
  MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 16
 MSFlexGrid1.Text = "怀柔区"
  MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 17
 MSFlexGrid1.Text = "平谷区"
  MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 18
 MSFlexGrid1.Text = "延庆区"
 MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 19
 MSFlexGrid1.Text = "昌平以西"
 MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 20
 MSFlexGrid1.Text = "延庆以北"
  MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 21
 MSFlexGrid1.Text = "密云以东"
 MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 22
 MSFlexGrid1.Text = "廊坊-天津"
  MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 23
 MSFlexGrid1.Text = "大兴以南"
  MSFlexGrid1.Row = 0
 MSFlexGrid1.Col = 24
 MSFlexGrid1.Text = "出发地"
 
 '填入小区初始发生与吸引量,交通总量
 Sum = 0
 For i = 1 To 23
     MSFlexGrid1.Row = i
     MSFlexGrid1.Col = 24
     MSFlexGrid1.Text = G(i)
     Sum = Sum + G(i)
 
 Next
 
  For i = 1 To 23
     MSFlexGrid1.Row = 24
     MSFlexGrid1.Col = i
 MSFlexGrid1.Text = A(i)
 Next
 
   MSFlexGrid1.Row = 24
 MSFlexGrid1.Col = 24
 MSFlexGrid1.Text = Sum

End Sub
 
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -