Criei uma caixa de combinação em uma planilha seguindo as instruções em outro post . Agora eu gostaria que essa caixa aparecesse em todas as células de uma coluna. A ideia é que eu possa manter uma lista do que estou fazendo (entradas de tempo) e usar a caixa de combinação para cada nova linha. Eu sei que posso fazer isso manualmente para cada linha, mas existe uma maneira mais fácil, como o recurso "copiar" do Excel?
Duplicação de caixa de combinação VBA
A caixa de combinação ou os objetos mais visíveis têm suas propriedades padrão de "Posicionamento de objeto" definidas como "Mover, mas não dimensionar com células". Isso também se aplica à cópia de uma célula ou de várias células. No entanto, se a configuração estiver definida como "Não mover ou dimensionar com células", o objeto não será copiado junto com uma célula copiada.
Coloque sua caixa de combinação totalmente dentro de uma célula. Copie essa célula (não o objeto) e cole na célula abaixo. A caixa de combinação será copiada (se não, verifique se você está no modo de design na guia do desenvolvedor). Infelizmente, o link da célula permanecerá a mesma referência e não será atualizado automaticamente para a próxima linha, como faria uma fórmula. Para isso, você precisaria escrever uma pequena macro VBA para percorrer todas as caixas de combinação e renumerar suas referências, ou apenas percorrê-las manualmente na caixa de propriedades do VBA, por exemplo, selecione "LinkedCell" e comece a digitar a referência para a caixa 1, pressione tab , pressione a seta para baixo, pressione shift tab, digite referência para a caixa 2, repita...