Alternative to INDIRECT() in Excel












1















I am currently using a formula =MATCH(A2,INDIRECT(Q20):INDIRECT(Q22),0) where A2 contains an item to be searched in a range. The range is dynamic, Q20 holds the start point as =ADDRESS(Q17,3,4) and Q22 holds =ADDRESS(Q18,3,4). Q17 and Q18 contain a formula to calculate the desired row number based on user input in a specific cell B2. As you can see, the range is generated dynamically.



Can anyone suggest doing the same using a non-volatile function ? This is to be used in multiple places and it slows down the entire spreadsheet if done so. I also want to keep Manual Calculation disabled as I need to return updated results as soon as a the input is entered in the specific cell B2.










share|improve this question

























  • Are the addresses always in column C?

    – user10852207
    Jan 1 at 11:38











  • @user10852207, yes always

    – ytoamn
    Jan 1 at 11:39
















1















I am currently using a formula =MATCH(A2,INDIRECT(Q20):INDIRECT(Q22),0) where A2 contains an item to be searched in a range. The range is dynamic, Q20 holds the start point as =ADDRESS(Q17,3,4) and Q22 holds =ADDRESS(Q18,3,4). Q17 and Q18 contain a formula to calculate the desired row number based on user input in a specific cell B2. As you can see, the range is generated dynamically.



Can anyone suggest doing the same using a non-volatile function ? This is to be used in multiple places and it slows down the entire spreadsheet if done so. I also want to keep Manual Calculation disabled as I need to return updated results as soon as a the input is entered in the specific cell B2.










share|improve this question

























  • Are the addresses always in column C?

    – user10852207
    Jan 1 at 11:38











  • @user10852207, yes always

    – ytoamn
    Jan 1 at 11:39














1












1








1


1






I am currently using a formula =MATCH(A2,INDIRECT(Q20):INDIRECT(Q22),0) where A2 contains an item to be searched in a range. The range is dynamic, Q20 holds the start point as =ADDRESS(Q17,3,4) and Q22 holds =ADDRESS(Q18,3,4). Q17 and Q18 contain a formula to calculate the desired row number based on user input in a specific cell B2. As you can see, the range is generated dynamically.



Can anyone suggest doing the same using a non-volatile function ? This is to be used in multiple places and it slows down the entire spreadsheet if done so. I also want to keep Manual Calculation disabled as I need to return updated results as soon as a the input is entered in the specific cell B2.










share|improve this question
















I am currently using a formula =MATCH(A2,INDIRECT(Q20):INDIRECT(Q22),0) where A2 contains an item to be searched in a range. The range is dynamic, Q20 holds the start point as =ADDRESS(Q17,3,4) and Q22 holds =ADDRESS(Q18,3,4). Q17 and Q18 contain a formula to calculate the desired row number based on user input in a specific cell B2. As you can see, the range is generated dynamically.



Can anyone suggest doing the same using a non-volatile function ? This is to be used in multiple places and it slows down the entire spreadsheet if done so. I also want to keep Manual Calculation disabled as I need to return updated results as soon as a the input is entered in the specific cell B2.







excel






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Jan 1 at 11:43







ytoamn

















asked Jan 1 at 11:33









ytoamnytoamn

1178




1178













  • Are the addresses always in column C?

    – user10852207
    Jan 1 at 11:38











  • @user10852207, yes always

    – ytoamn
    Jan 1 at 11:39



















  • Are the addresses always in column C?

    – user10852207
    Jan 1 at 11:38











  • @user10852207, yes always

    – ytoamn
    Jan 1 at 11:39

















Are the addresses always in column C?

– user10852207
Jan 1 at 11:38





Are the addresses always in column C?

– user10852207
Jan 1 at 11:38













@user10852207, yes always

– ytoamn
Jan 1 at 11:39





@user10852207, yes always

– ytoamn
Jan 1 at 11:39












1 Answer
1






active

oldest

votes


















2














INDEX can usually replace INDIRECT and ADDRESS. It is also considered non-volatile (unlike INDIRECT and ADDRESS) so it will not recalculate as much.



 =MATCH(A12, INDEX(A:Z, Q17, 3):INDEX(A:Z, Q18, 3), 0)
'if always in column C then the range can be tightened.
=MATCH(A12, INDEX(C:C, Q17):INDEX(C:C, Q18), 0)





share|improve this answer
























  • Bingo, Thanks a lot. Both solutions work, however I prefer the second as I dont want to canvas the whole sheet

    – ytoamn
    Jan 1 at 11:47











Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53995083%2falternative-to-indirect-in-excel%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









2














INDEX can usually replace INDIRECT and ADDRESS. It is also considered non-volatile (unlike INDIRECT and ADDRESS) so it will not recalculate as much.



 =MATCH(A12, INDEX(A:Z, Q17, 3):INDEX(A:Z, Q18, 3), 0)
'if always in column C then the range can be tightened.
=MATCH(A12, INDEX(C:C, Q17):INDEX(C:C, Q18), 0)





share|improve this answer
























  • Bingo, Thanks a lot. Both solutions work, however I prefer the second as I dont want to canvas the whole sheet

    – ytoamn
    Jan 1 at 11:47
















2














INDEX can usually replace INDIRECT and ADDRESS. It is also considered non-volatile (unlike INDIRECT and ADDRESS) so it will not recalculate as much.



 =MATCH(A12, INDEX(A:Z, Q17, 3):INDEX(A:Z, Q18, 3), 0)
'if always in column C then the range can be tightened.
=MATCH(A12, INDEX(C:C, Q17):INDEX(C:C, Q18), 0)





share|improve this answer
























  • Bingo, Thanks a lot. Both solutions work, however I prefer the second as I dont want to canvas the whole sheet

    – ytoamn
    Jan 1 at 11:47














2












2








2







INDEX can usually replace INDIRECT and ADDRESS. It is also considered non-volatile (unlike INDIRECT and ADDRESS) so it will not recalculate as much.



 =MATCH(A12, INDEX(A:Z, Q17, 3):INDEX(A:Z, Q18, 3), 0)
'if always in column C then the range can be tightened.
=MATCH(A12, INDEX(C:C, Q17):INDEX(C:C, Q18), 0)





share|improve this answer













INDEX can usually replace INDIRECT and ADDRESS. It is also considered non-volatile (unlike INDIRECT and ADDRESS) so it will not recalculate as much.



 =MATCH(A12, INDEX(A:Z, Q17, 3):INDEX(A:Z, Q18, 3), 0)
'if always in column C then the range can be tightened.
=MATCH(A12, INDEX(C:C, Q17):INDEX(C:C, Q18), 0)






share|improve this answer












share|improve this answer



share|improve this answer










answered Jan 1 at 11:42









user10852207user10852207

2263




2263













  • Bingo, Thanks a lot. Both solutions work, however I prefer the second as I dont want to canvas the whole sheet

    – ytoamn
    Jan 1 at 11:47



















  • Bingo, Thanks a lot. Both solutions work, however I prefer the second as I dont want to canvas the whole sheet

    – ytoamn
    Jan 1 at 11:47

















Bingo, Thanks a lot. Both solutions work, however I prefer the second as I dont want to canvas the whole sheet

– ytoamn
Jan 1 at 11:47





Bingo, Thanks a lot. Both solutions work, however I prefer the second as I dont want to canvas the whole sheet

– ytoamn
Jan 1 at 11:47




















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53995083%2falternative-to-indirect-in-excel%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

MongoDB - Not Authorized To Execute Command

in spring boot 2.1 many test slices are not allowed anymore due to multiple @BootstrapWith

How to fix TextFormField cause rebuild widget in Flutter