Try the script on the attached workbook.
range r1 = wks2!col("column1");
range r2 = wks1!col(A);
range r3 = wks1!col("Column2");
dataset ds;
dataset ds1;
ds.SetSize(r2.nrows);
ds1.SetSize(r2.nrows);
for (int i = 1; i <= r2.nrows; i++) {
int idx = 1;
for (int j = 1; j <= r1.nrows; j++) {
if (abs(r2[i] - r1[j]) < abs(r2[i] - r1[idx])) {
idx = j;
}
}
ds[i] = idx;
int start = idx - 4;
start = start > 0 ? start : 1;
int end = idx + 4;
end = end < r3.nrows ? end : r3.nrows;
range rtmp = wks1!col("Column2")[$(start):$(end)];
ds1[i] = max(rtmp);
}
range r4 = wks1!col(C);
r4 = ds;
range r5 = wks1!col(D);
r5 = ds1;
https://my.originlab.com/ftp/forum_and_kbase/Images/SearchSample.ogwu
James