Option Explicit
Option Base 1
'转化NDVI值到-1到1之间’
Sub change()
Dim i, j As Long
Dim x As Long
Dim ndvifile, out As String
Dim ndvi(650, 848) As Single
Dim ndvibuffer(650, 848) As Doublendvifile = "D:\NDVI\China GIMMS ndvi 8km\98apr15a.img"If Len(Dir(ndvifile)) <= 0 Then
MsgBox "error ndvi"
Else
Open ndvifile For Binary Access Read As #1
Get #1, , ndvibuffer()
Close #1
End IfFor i = 1 To 848
For j = 1 To 650
x = 10000
If ndvibuffer(j, i) = -x Then
ndvi(j, i) = -1
Else
ndvi(j, i) = ndvibuffer(j, i) / x
End If
Next j
Next i
out = "D:\NDVI\China GIMMS ndvi 8km\1998\98sepzhuan115a.img"
Open out For Binary Access Write As #40
Put #40, , ndvi
Close #40
MsgBox "mission accomplished!"
End Sub
Option Base 1
'转化NDVI值到-1到1之间’
Sub change()
Dim i, j As Long
Dim x As Long
Dim ndvifile, out As String
Dim ndvi(650, 848) As Single
Dim ndvibuffer(650, 848) As Doublendvifile = "D:\NDVI\China GIMMS ndvi 8km\98apr15a.img"If Len(Dir(ndvifile)) <= 0 Then
MsgBox "error ndvi"
Else
Open ndvifile For Binary Access Read As #1
Get #1, , ndvibuffer()
Close #1
End IfFor i = 1 To 848
For j = 1 To 650
x = 10000
If ndvibuffer(j, i) = -x Then
ndvi(j, i) = -1
Else
ndvi(j, i) = ndvibuffer(j, i) / x
End If
Next j
Next i
out = "D:\NDVI\China GIMMS ndvi 8km\1998\98sepzhuan115a.img"
Open out For Binary Access Write As #40
Put #40, , ndvi
Close #40
MsgBox "mission accomplished!"
End Sub
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货