Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
#21127
Boa noite pessoal,

Estou tentando popular um combobox mais não consigo, já fiz inúmeras pesquisas e não obtive retorno algum.

Minha duvida é a seguinte:

Tenho uma tabela com duas colunas

ID | Maquina
1 | Injetora 01
2 | Injetora 02 etc...

preciso de popular ele com os dados da coluna Maquina e na hora de cadastrar preciso que o valor seja da coluna ID, é possível? faço isso em php brincando mais no vba tá difícil.
#21128
Vc quer popu?lar o combobox com o nome das máquinas. Depois selecionada uma máquina no combobox e o usuário apertar um botão de cadastro, você quer que retorne o ID correspondente à máquina selecionada? É isso?
Se for isso, você pode retornar usando ÌNDICE+CORRESP no VBA assim:

Premissa: dados das máquinas estão na plan1 de B2 a B4 e dos IDS de A2 a A4.

Sub teste()
Dim codID as variant

With Application.WorksheetFunction
codID = .Index(Plan1.Range("A2:A4"), .Match(Combobox1.Value, Plan1.Range("B2:B4"), 0), 1)
End With

End Sub

Com isso você vai poder usar o codID para fazer o cadastro onde você quiser.
#21135
Bom dia amigo,

Ainda não entendi como aplicar essa solução.

Segue o meu botão de cadastro e os dados que se encontra no combobox "cb_maquinas".

Private Sub cmd_Ok_Click()
linha = Sheets("Apontamento de Producao").Cells(Rows.Count, "A").End(xlUp).Offset(1, 0).Row

Planilha1.Cells(linha, 1).Value = Me.txt_codigo.Value
Planilha1.Cells(linha, 2).Value = Me.txt_data.Value
Planilha1.Cells(linha, 3).Value = Me.txt_lote.Value
Planilha1.Cells(linha, 4).Value = Me.cb_operador.Value
Planilha1.Cells(linha, 6).Value = Me.cb_maquina.Value
Planilha1.Cells(linha, 8).Value = Me.cb_produto.Value
Planilha1.Cells(linha, 10).Value = Me.txt_producao.Value
Planilha1.Cells(linha, 11).Value = Me.txt_hr_inicio.Value
Planilha1.Cells(linha, 12).Value = Me.txt_hr_fim.Value

mensagem = MsgBox("Apontamento efetuado com sucesso", vbInformation, ":: GrupoSAF ::")

Unload Me

End Sub

Private Sub UserForm_Initialize()
Dim linha As Integer
linha = 2
Do Until Planilha4.Range("b" & linha).Value = ""
Me.cb_maquina.AddItem Planilha4.Range("B" & linha).Value
linha = linha + 1
Loop

End Sub
#21141
Não sei se entendi exatamente o que você quer.

Se você anexar a planilha e explicar o que você quer com base nela, fica mais fácil de entender e te ajudar. Ou seja, explicar o que você quer que aconteça no formulário (nos combobox e textbox) e como você que cadastrar estas informações na sua planilha.
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord