Posso utilizzare lo stesso module per immettere diverse celle

Sono piuttosto nuovo alla VBA e ho voluto vedere se stavo andando lungo il mio task lungo la strada.

Ho bisogno di chiedere domande agli utenti e sto utilizzando un module VBA per farlo, una volta inserito lì risposte, questo verrà poi salvato nella cartella di lavoro nelle celle specificate.

Tuttavia dovranno rispondere alle stesse domande per each paese, le domande rimarranno le stesse, ma i valori e le posizioni delle cellule differiscono. C'è un modo per farlo senza creare 50 forms identiche?

Vorrei anche ricordare che i dati saranno preceduti dal momento in cui hanno risposto alle domande precedenti che elimina la possibilità di aggiungere alla prossima row vuota.

Se hai i paesi elencati in un foglio di lavoro nella colonna A.

Sub PostAnswer(Country as string) Dim lrow As Long Dim ws As Excel.Worksheet Set ws = Worksheets("Sheet1") lrow = 1 Do While lrow <= ws.UsedRange.Rows.count 'Check if this row is the current country If ws.Range("A" & lrow).Value = Country Then 'Write the answers to the current row ws.Range("B" & lrow).Value = SomeAnswer ws.Range("C" & lrow).Value = SomeOtherPartOfTheAnswer ws.Range("D" & lrow).Value = SomeOtherPartOfTheAnswer Exit Do End If lrow = lrow + 1 Loop End sub 

Suppongo di avere un button come "Risposta Post" o qualcosa sul module. Nell'evento clic del button chiama il sottogruppo sopra indicandolo nel paese corrente.

 Private Sub CommandButton1_Click() PostAnswer "Current Country" End sub Sub CommandButton1_Click () Private Sub CommandButton1_Click() PostAnswer "Current Country" End sub