Se a qualcuno serve una cosa del genere metto volentieri a disposizione quello che sono riuscito a sviluppare. Magari esiste già, magari è banale, ma mi ci sono sbattuto così tanto che volevo condividere con voi la mia piccola gioia

Beh il caso è semplice: dato una tabella di categorie prodotti (tblCatProd) e dei campi che la formano (ID, Categoria, IDPadre, Ordine) esporre un menu ad albero che indenti le categorie dipendenti rispetto al padre.

Beh questo è la funzioncina che ho elaborato
codice:
livello = 0
Sub Albero(intIDStart)
	Set objRSAlbero = Server.CreateObject("ADODB.Recordset")
	strSQLAlbero = "SELECT ID, Categoria FROM tblCatProd WHERE IDPadre = " & intIDStart & " ORDER BY Ordine ASC"
	objRSAlbero.Open strSQLAlbero, objConn, 1, 1
	If Not objRSAlbero.EOF Then
		For s = 1 To Livello
			spazi = spazi & ""
		Next
		Do While Not objRSAlbero.EOF
			Response.Write spazi & " " & objRSAlbero("Categoria") & "
"
			If Not RicavaFigli(objRSAlbero("ID"), "tblCatProd", "ID") = "" Then 
				livello = livello + 1
				Call Albero(objRSAlbero("ID"))
			End If
			objRSAlbero.MoveNext
		Loop
		livello = livello - 1
	End If
	objRSAlbero.Close
	Set objRSAlbero = Nothing
	'Response.Write(str)

End Sub
Che ne dite? Utile?
Fatemi sapere.
Ciao ciao