No Excel 2003 Eu tenho uma pergunta sobre a contagem de uma string de texto Homem em folhas chamadas 001R a 900R, na mesma célula C8 de todas as folhas
Eu tenho a seguinte resposta
=SUMPRODUCT(COUNTIF(INDIRECT("'"&ROW(INDIRECT(001&":"&900))&"R"&"'!C8"),"*Man*"))
Isso funciona perfeitamente quando as folhas estão todas presentes. Mas quando usando a fórmula acima quando nem todas as folhas estão presentes ainda, dá um erro, porque eu tenho nomes de planilha como
001R
002R
003S
004R
101R
102S
103R
210R
211R
305R
306S
307R
401R
402R
403S
404R
e assim por diante, para cerca de 300 folhas, e os números de folhas que faltam serão adicionados mais tarde, pois os dados estarão disponíveis.
Existe uma maneira de usar uma fórmula que abranja todos os números para incluir os nomes de planilha presentes e futuros possíveis, para evitar a edição da fórmula toda vez que uma nova planilha for adicionada?
@ Estudante de Gary tem uma resposta muito útil. Mas quero contar o texto em uma lista suspensa com muitos itens e quero contar a ocorrência de cada um deles. Com sua técnica, devo fazer um módulo UDF para cada item; ou existe uma maneira de fazer isso.
Além disso, tenho folhas com S não R anexadas ao seu número. Existe uma maneira de contar isso também? Quer dizer, há uma maneira de fazer
shName = Format(i, "000") & "R"
e
If InStr(1, cel, "Man") as variables entered in =SpecialSum(C8).
fonte
Respostas:
A seguinte função definida pelo usuário examinará seu bloco de planilhas. Se a folha existe, então a célula de interesse é examinada para ver se contém a corda Homem . Se a string estiver presente, a contagem é incrementada:
Funções Definidas pelo Usuário (UDFs) são muito fáceis de instalar e usar:
Se você salvar a pasta de trabalho, a UDF será salva com ela. Se você estiver usando uma versão do Excel posterior a 2003, deverá salvar o arquivo como .xlsm ao invés de .xlsx
Para remover o UDF:
Para usar o UDF do Excel:
Onde C8 é a célula de interesse. Para aprender mais sobre macros em geral, veja:
http://www.mvps.org/dmcritchie/excel/getstarted.htm
e
http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx
e para detalhes sobre UDFs, consulte:
http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx
As macros devem estar habilitadas para que isso funcione!
Isso permitirá que você adicione / remova planilhas sem editar a fórmula.
fonte