これはマルチバイト文字は考慮しなくて大丈夫でしょうか?
このスクリプトはしてません 半角英数字記号のみです
質問者さんが貼ったスクリプトだとstrmid(a,6,1)はfになります
改行が2Byteあるためです
7文字目はcと帰ってきたほうが意図と合いそうですので改行を無視して考えます
a ={"abb
bfg
cd
efgh
i
j"}
temp = ""
n = 7
a_ = a
len = 0
b = 0
//改行を無くす
strrep a_,"\n",""
//n+1文字目を取得
s = strmid(a_,n-1,1)
notesel a
repeat noteinfo(0)
//0から始まる行数を1からにする
b++
//cnt行目を取得
noteget temp,cnt
//n+1文字目がその行に入っているかを検索
index = instr(temp,0,s)
//入っていたら
if index != -1{
//indexは0から始まるので+1して終わり
c = index+1
break
}
loop
mes ""+n+"文字目は"+s+"です。"
mes "その文字は"+b+"行目の"+c+"文字目です。"