Jag vill kunna ta bort hårdkodningen av sökvägen till indexfilen längst ner i denna kod.. finns katalogerna i undermappar där din exefil ligger, skriv Nej exe filen kommer att ligga i högerklicks menyn. Vart vill du att filen ska skapas då? I samma mapp som du högerklickat på? I sådana fall kan du använda sökvägen i Command... just nu skapas den direkt i C: där det ligger en html fil som ser ut så här:ta bort hårdkodningen
programmet skall göras om så att man ska kunna högerklicka på filstruktur mappen med mappar och filer för att skapa html filen.
Form1:
Private Sub Form_Load()
' Simple datatypes
Dim strPath As String
'strPath = Command()
strPath = "'C:\Jesper\Filstruktur ex\'"
If Not exportToHTML(strPath) Then
MsgBox "Export Error"
End If
End Sub
Module1:
Public Function exportToHTML(strPath As String) As Boolean
exportToHTML = True
' Object
Dim oFileSystemObj As New FileSystemObject
Dim oFolder As Folder
Dim oSubFolder As Folder
Dim oFiles As Files
Dim oFile As File
Dim strnew As String
Dim firstfile As Boolean
strPath = Left(strPath, Len(strPath) - 1)
strPath = Right(strPath, Len(strPath) - 1)
CopyHTMLIndexFilePath strPath
WriteAndReadHtml
'MsgBox "strPath " & strPath
Set oFolder = oFileSystemObj.GetFolder(strPath)
'MsgBox oFolder.Name
For Each oSubFolder In oFolder.SubFolders
'MsgBox oSubFolder.Name
firstfile = True
For Each oFile In oSubFolder.Files
If firstfile Then
strnew = strnew & "<tr>" & _
"<td valign = " & Chr(34) & "top" & Chr(34) & ">" & _
oSubFolder.Name & _
"</td>" & _
"<td>" & _
oFile.Name & _
"</td>" & _
"</tr>"
firstfile = False
Else
strnew = strnew & "<tr>" & _
"<td>" & _
"" & _
"</td>" & _
"<td>" & _
oFile.Name & _
"</td>" & _
"</tr>"
'MsgBox oFile.Name
End If
Next
Next
GoToLocationInFile strnew
End Function
Private Function CopyHTMLIndexFilePath(ByVal strPath As String)
Dim oFileSystemObj As New FileSystemObject
Dim strHTMLIndexFilePath As String
strHTMLIndexFilePath = "C:\Jesper\Kod\index.html"
strPath = strPath & Dir(strHTMLIndexFilePath)
FileCopy strHTMLIndexFilePath, strPath
End Function
Private Function WriteAndReadHtml()
strPath = "C:\Jesper\Filstruktur ex\"
' läsa fil
Dim fd2 As Integer
fd2 = FreeFile
Open "c:\Index.html" For Input As fd2
Do Until EOF(fd2)
Input #fd2, Strget
'MsgBox Strget
Loop
Close fd2
' skriva till fil
'Open "C:\Index.html" For Append As fd2
'Print #fd2, "text som ska skrivas till filen"
'Close #fd2
End Function
Private Function GoToLocationInFile(strnew As String)
' läsa fil
Dim fd2 As Integer
Dim boolFound As Boolean
Dim StrPre As String
Dim StrPost As String
Dim Strget As String
fd2 = FreeFile
Open "c:\Index.html" For Input As fd2
boolFound = False
Do Until EOF(fd2)
Input #fd2, Strget
'MsgBox Strget
If Strget = "<!--apa -->" Then
MsgBox "found"
boolFound = True
Else
If boolFound = False Then
StrPre = StrPre & vbCrLf & Strget
Else
StrPost = StrPost & vbCrLf & Strget
End If
End If
Loop
Close #fd2
MsgBox "Pre" & vbCrLf & StrPre
MsgBox "Post" & vbCrLf & StrPost
strnew = strnew
fd2 = FreeFile
Open "c:\Index.html" For Output As fd2
Print #fd2, StrPre
Print #fd2, strnew
Print #fd2, StrPost
Close #fd2
End Function
Sv: ta bort hårdkodningen
app.path & "/jesper"Sv:ta bort hårdkodningen
dvs C:\Documents and Settings\(username)\SendTo
så jag vet inte hur jag ska lösa det.Sv: ta bort hårdkodningen
/JohanSv:ta bort hårdkodningen
<code>
<html>
<head>
<title>Namnlöst dokument</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<table width="300" border="1">
<tr>
<td>Kataloger</td>
<td>Filer</td>
</tr>
<!--apa -->
</table>
</body>
</html>
</code>
Så denna fil blir redigerad av programmet.. dvs övriga celler, kollumner, mappnamn och filnamn sätts in sen