[VBA,VB.NET,C#,PHP]プログラムTips集

[VBA,VB.NET,C#,PHP]プログラムのちょっとしたテクニック

範囲のデータを統括・分割

パターン

pattern1(start is same value)
S1■■■■■■■■■■E1
S2■■■■■■■■■■□□□□□□□□□□□E2
pattern2
S1■■■■■■■■■■■■■■■■■■E1
□□□□□□□S2■■■■■■■■■■■■■■■■■■■■■■■E2
pattern3(END is same value)
S1■■■■■■■■■■■■■■■■■■E1
□□□□□□□S2■■■■■■■■■■■E2
pattern4(all same)
S1■■■■■■■■■■■■■■■■■■E1
S2■■■■■■■■■■■■■■■■■■E2
pattern4(all same)
S1■■■■■■■■■■■■■■■■■■E1
□□□S2■■■■■■■■■■■E2□□□□
サンプル

S1■■■■■■■■■■■■■■■■■■E1
□□□□□□□S2■■■■■■■■■■■■■■■■■■■■■■■E2
S1■■■■■■■■■■■■■■■■■■E1
□□□S2■■■■■■■■■■■E2□□□□
必要なデータ

S1
S2
(S2-1)
Emin = Min(E1,E2)
Emax = Max(E1,E2)
開始・終了を決める

Sa = S1
Ea = S2-1

Sb = S2
Eb = Emin

Sc = Emin + 1
Ec = Emax
source code

Dim S1 As String
Dim E1 As String
Dim S2 As String
Dim E2 As String
Dim Emin As String
Dim Emax As String
S1 = tbl.Rows(idx).Items("S").ToString()
E1 = tbl.Rows(idx).Items("E").ToString()
S2 = tbl.Rows(idx+1).Items("S").ToString()
E2 = tbl.Rows(idx+1).Items("E").ToString()
Emin = Math.Min(E1,E2)
Emax = Math.Max(E1,E2)
1行目

Dim Sa As String
Dim Ea As String
Sa = S1
Ea = S2-1
2行目

Dim Sb As String
Dim Eb As String
Sb = S2
Eb = Emin
3行目

Dim Sb As String
Dim Eb As String
Sb = Emin + 1
Eb = Emax