Yes, you can. You can either add your own VB.NET projects to the solution and use post build events to copy files up to the main web project (as we do in the mojoPortal.Features.UI project) or you can use inline code and just drop in files.
For example here is a simple hello world in VB.NET, you can create a text file VBTeast.aspx and paste in this code, then drop the file in your mojo site and it will work.
<%@ Page Language="VB" ClassName="VBTest.aspx" Inherits="System.Web.UI.Page" %>
<%@ Import Namespace="mojoPortal.Business" %>
<%@ Import Namespace="mojoPortal.Business.WebHelpers" %>
<%@ Import Namespace="mojoPortal.Web.Framework" %>
<%@ Import Namespace="mojoPortal.Web.Controls" %>
<%@ Import Namespace="mojoPortal.Web.Editor" %>
<%@ Import Namespace="mojoPortal.Net" %>
<script runat="server">
Sub Page_Load()
lblTest.Text = "Hello Web"
End Sub
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>VB.NET Test</title>
</head>
<body>
<form id="form1" runat="server">
<asp:Label id="lblTest" runat="server" />
</form>
</body>
</html>
Same thing should work for UserControls, with inline code the language is declared in the page or control.
However, working with mojoPortal may also be seen as an opportunity to learn C#. I've done plenty of work in VB.NET but I find C# so much cleaner, VB is so verbose ;-)
Hope it helps,
Joe