No, sorry, this is not possible in the general case for *any* formula plus
having it update automatically. Without using VBA, that is.

However,it *can* be done for a very small number of specific formula (like concatenating a constant string). It can also be done, but with manual updating, for a certain set of formulas as cleverly shown in VFor's answer.

The closest you can get to a general solution is to rearrange the cells, embed the `DOSOMETHING`

formula in a special wrapper formula, and use helper columns.

For your supplied example worksheet:

Rearrange it like this:

Enter the following formula in `D2`

and ctrl-enter/copy-paste/fill-down&right/auto-fill into the rest of the table's columns:

```
=IF(COLUMN()-COLUMN($C2)>$A2,"§",C2&"_checked")
```

Enter the following formula in `B2`

and ctrl-enter/copy-paste/fill-down/auto-fill into the rest of the table's column:

```
=INDEX(C2:INDEX(2:2,1,COLUMNS(2:2)),MATCH("§",C2:INDEX(2:2,1,COLUMNS(2:2)),0)-1)
```

Note that the number of helper columns required is the maximum allowable value of n plus one. If there aren't enough of them for an entered value, an error ensues:

**Explanation:**

The generalised wrapper formula for the helper columns is:

```
=IF(COLUMN()-COLUMN($C2)>$A2,"§",DOSOMETHING(C2))
```

where `DOSOMETHING(C2)`

is *any* formula based on `C2`

only (for example, `LEFT(C2,LEN(C2)-1)`

which progressively removes the last character).

The wrapper formula works by operating on the cell to the left, thus effectively "nesting" the formulas the further to the right in the row it goes.

The `IF(COLUMN()-COLUMN($C2)>$A2,"§",`

part uses the column indexes to count down the number of times the `DOSOMETHING`

formula is nested, and once the number of times specified in column `A`

has been achieved it outputs terminator strings. These strings do not necessarily need to be `§`

. They just need to be something that will *never* be the result of the evaluation of any number of nested formulas for any allowable `Value`

.

The `Result`

formula looks trickier. However, the `C2:INDEX(2:2, 1, COLUMNS(2:2))`

parts are simply the sub-range of row `2`

to the right of the `Result`

column.

The formula is thus essentially the same as:

```
=INDEX(2:2,MATCH("§",2:2,0)-1)
```

which makes it easier to understand.

(Note that this formula actually works if iterative calculations are enabled.)

Looking at this simpler formula, it is clear that the formula returns the n-level nested `DOSOMETHING`

function result.

`=value&"_checked"`

) would have a different way than if you wanted to run an`Index/Match`

three times or so... – BruceWayne Dec 12 '18 at 16:41