Ciao,
con le formule non saprei farlo anche se non escludo che si possa fare perché excel possiede tutto un set di formule molto potenti per lavorare sulle matrici mentre con VBA è uno scherzo, basta questo codice
codice:
Private Sub CommandButton1_Click()
stringa = InputBox("inserire la prima e l'ultima cella delle etichette di riga e colonna e la cella in cui posizionare la tabella risultato, separate da uno spazio" & vbCrLf & "es B1 E1 A2 A5 G1")
a = Split(stringa)
r_out = Range(a(4)).Row
c_out = Range(a(4)).Column
Cells(r_out, c_out) = "F"
Cells(r_out, c_out + 1) = "P"
Cells(r_out, c_out + 2) = "VALUE"
r_out = r_out + 1
For Each riga In Range(a(2), a(3))
For Each colonna In Range(a(0), a(1))
Cells(r_out, c_out) = riga
Cells(r_out, c_out + 1) = colonna
Cells(r_out, c_out + 2).Value = Cells(riga.Row, colonna.Column).Value
r_out = r_out + 1
Next
Next
End Sub
Per utilizzarlo devi salvare il foglio nel formato xlsm che prevede l'attivazione delle macro, attivare la scheda Sviluppo (se non è già attiva) dalle opzioni di excel e inserire un pulsante ActiveX poi clicchi due volte sul pulsante, inserisci il codice che ti ho dato, torni sul foglio disattivi la modalità di progettazione e clicchi sul pulsante. Tutto qui.
Fai sapere se ci sono problemi.
Ciao