Very intersting
but also try to assign RelPerm not to a block values but to each satnum based on porosity values or perm values as the rock behaves
here some present fom me to enhance you file
using this module you can print directly to txt file
Sub export_file()
Dim iFileNo As Integer
iFileNo = FreeFile
Dim eline As String
Dim ddate As Date
Dim well_export As String
'well_export = Range("well_export")
Dim suser As String
Dim scomputer As String
Dim temp_line As String
Dim path1 As String

If Range("path") = Empty Then

Path = ActiveWorkbook.Path

Path = Path & "\" & Range("fname")
Else
Path = Range("path")

End If
'MsgBox (path1)
'Exit Sub

ddate = Now

Const ForReading = 1, ForWriting = 2, ForAppending = 3
Const TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0
Dim fs, f, ts, s
Set fs = CreateObject("Scripting.FileSystemObject")
Set ts = fs.CreateTextFile(Path, True)


'Open Range(path1) For Output As #iFileNo
'Close #iFileNo

suser = VBA.Environ("USERNAME")
scomputer = VBA.Environ("COMPUTERNAME")




ts.writeline "---EXPORT OF NNC DATA"
ts.writeline "---DATE OF REVISION " & ddate
ts.writeline "---USER - " & suser
ts.writeline "---COMPUTER - " & scomputer
ts.writeline ""


Set fg = Worksheets("NNC")

ts.writeline "NNC"


n = 2
Do Until Trim(fg.Cells(n, 1)) = ""
temp_str = ""
For i = 1 To 7
'If Trim(fg.Cells(n, i)) <> "" And IsNumeric(fg.Cells(n, i)) = True Then temp_str = temp_str & Format(fg.Cells(n, i), "0.000000000000") & " "
'If Trim(fg.Cells(n, i)) <> "" And IsNumeric(fg.Cells(n, i)) = False Then
temp_str = temp_str & fg.Cells(n, i) & " "
Next i

ts.writeline temp_str & "/" & " ---" & fg.Cells(n, 8)
' End If

n = n + 1
Loop
ts.writeline "/"
ts.writeline ""
ts.Close

End Sub