I am studying Stata programming with the book *An Introduction to Stata Programming, Second Edition*.

In chapter 4 there is code to `generate` a variable that tests whether some other variables satisfy a logical condition, the code is like:

```
foreach v of varlist child1-child12{
        local n_school "`n_school' + inrange(`v', 1, 5)"
    }
    gen n_school = `n_school'

```

When I change this code to suit my own data,

```
foreach v of varlist qp605_s_1-qp605_s_5 {
        local n_med  "`n_med' + inrange(`v', 1, 5)"
    }
    gen n_med = `n_med'

```

where `qp605_s_1`'s values range from 1 to 17, then Stata returns:

```
. foreach v of varlist qp605_s_1-qp605_s_5 {
  2.         local n_med "`n_med' + inrange(`v', 1, 5)"
  3. }

. gen n_med = `n_med'
unknown function +inrange()
r(133);

```

Any ideas what is wrong with this code?