Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Översätt VBA

Postades av 2004-12-16 23:20:59 - Torfi Ingolfsson, i forum visual basic - allmänt, Tråden har 14 Kommentarer och lästs av 1044 personer

Kan någon hjälpa mig med att översätta följande kod till VB6?

<code>
Set fs = Application.FileSearch

Dim sPath As String
Dim sFileName As String
Dim sSuffix As String
Dim lPos As Long

sPath = Blad1.Range("F2")

With fs
.LookIn = sPath
.Filename = "*.*"
If .Execute(SortBy:=msoSortByFileName, SortOrder:=msoSortOrderAscending) > 0 Then
For i = 1 To .FoundFiles.Count
sFileName = .FoundFiles(i)
lPos = InStr(1, sFileName, ".")
sFileName = VBA.Left(sFileName, lPos - 1)
sSuffix = Format(Date, "YYMMDD") & Format(Time, "HHMMSS")
sFileName = sFileName & sSuffix
OldName = .FoundFiles(i): NewName = sFileName & ".txt"
Name OldName As NewName
Next i
Else
MsgBox "Det fanns inga .txt filer att byta namn på. " & Time
End If
End With

If i > 0 Then
MsgBox i - 1 & " filer bytte namn"
End If
</code>

//Torfi

-----------------IT'S KILL, NO WORK------------


Svara

Sv: Översätt VBA

Postades av 2004-12-17 03:22:22 - Sven Åke Persson

Jag har en snabb och bra lösning , men jag vill se ett exempel på vad denna rad kan lämna
<b> sPath = Blad1.Range("F2")</b> hur kan sPath se ut ?

Är det rätt uppfattat att du bara vill byta namn på .txt filer
Skall filerna vara sorterade efter sina namn ? A överst eller ?


Svara

Sv:Översätt VBA

Postades av 2004-12-17 07:35:49 - Torfi Ingolfsson

<b> sPath = Blad1.Range("F2")</b> Är sökvägen till en katalog på servern ex.<b> F:\Program\Files\</b>

Sorteringen spelar ingen roll bara alla filer får ett suffix, det skall adderas <b>YYMMDDHHMMSS</b> innan fil ändelsen

//Torfi


Svara

Sv: Översätt VBA

Postades av 2004-12-17 07:53:31 - Sven Åke Persson

Sista koll innan jag kommer med mitt förslag.
Det gäller bara filer med .txt ? oberoende vad den hade för namn skall den nu heta
ex. 041217085032.txt

I ditt ex. sPath F:\Program\Files\ kommer den sista backslachen med är det alltid så ?
eller måste detta kollas. ?


Svara

Sv:Översätt VBA

Postades av 2004-12-17 08:41:19 - Sven Åke Persson

En annan sak det här kommer att gå så himla snabbt så programmet
kommer att vilja döpa flera filer med samma sekund namn.
Hur vill du handskas med det ?

Om jag kommer till samma mapp ytterligare en gång
skall programmet då döpa om dom en gång till ?


Svara

Sv:Översätt VBA

Postades av 2004-12-17 11:40:03 - Torfi Ingolfsson

Frågor
Sista koll innan jag kommer med mitt förslag.
1. Det gäller bara filer med .txt ? oberoende vad den hade för namn skall den nu heta
ex. 041217085032.txt

SVAR: Oavsett fil ändelse


2. I ditt ex. sPath F:\Program\Files\ kommer den sista backslachen med är det alltid så ?
eller måste detta kollas.

SVAR: Min tanke sen var att läsa in denna sökväg från en ini-fil eller att man startar applikationen med en parameter som anger sökvägen ex. <b>Rename.exe -F:\Program\Files\</b> i framtiden men jag måste lära mig mer för att komma dit. Utgå ifrån att den kommer att vara kompilerad i programet "F:\Program\Files\"


3. En annan sak det här kommer att gå så himla snabbt så programmet
kommer att vilja döpa flera filer med samma sekund namn.
Hur vill du handskas med det ?

SVAR: Det kommer att finnas väldigt få filer och finns det många så namnet redan unikt och kommer även att vara unikt sen ex. Kalle.txt blir Kalle041217113602.txt och Pelle.txt blir Pelle041217113602.txt.


4. Om jag kommer till samma mapp ytterligare en gång
skall programmet då döpa om dom en gång till ?

SVAR: Helst inte, men jag hade tänkt att lösningen skall vara ganska enkel och att jag kan utveckla den allt eftersom jag blir bättre.


Tack så länge /Torfi


Svara

Sv: Översätt VBA

Postades av 2004-12-17 11:59:18 - Sven Åke Persson

Ditt svar konfunderar mig lite !
Det gamla Suffixet och det nya skall vara med tex så kommer

en fil som nu heter Scandir.exe att få namnet "Scandir041217115438.txt"

Är detta rätt ?

Testkörde mitt exempel nu den döpte om ca 110 filer på samma sekund.
Alla fick 23 som sista 2


Svara

Sv:Översätt VBA

Postades av 2004-12-17 12:51:02 - Sven Åke Persson

Så här blir mitt första förslag som kan justeras efter behov.
Om någon "besserwisser" kommer med förslag att du skall använda FSO(File System Object)
så skippa det. FSO är trögt och helt underlägset gamla Dir och FileListBox

<code>
Option Explicit
'Lägg in en FileListBox och en CommandButton
Private Sub Form_Load()
File1.Visible = False
File1.Pattern = "*.*"
End Sub
Private Sub Command1_Click()
Dim oldArray() As String
Dim sPath As String
Dim sFileName As String
Dim sSuffix As String
Dim i As Long
sPath = Blad1.Range("F2")
If Right$(sPath, 1) <> "\" Then _
sPath = sPath & "\"
File1.Path = sPath
On Error Resume Next
For i = 0 To File1.ListCount - 1
sFileName = File1.List(i)
oldArray = Split(sFileName, ".")
sSuffix = Format$(Now, "yymmddhhmmss")
Name sPath & sFileName As _
sPath & oldArray(0) & sSuffix & ".txt"
Next 'i
End Sub
</code>


Svara

Sv: Översätt VBA

Postades av 2004-12-17 13:14:25 - Torfi Ingolfsson

Ser snyggt ut!

Kan jag bara byta ut <b>Blad1.Range("F2")</b> med en sökväg?

vad gör File1 kommandot?

/T


Svara

Sv:Översätt VBA

Postades av 2004-12-17 13:59:07 - Sven Åke Persson

<b>Kan jag bara byta ut Blad1.Range("F2") med en sökväg?</b>

Javisst typ som du skrev "F:\Program\Filer\"
dvs aktuell mapp utan att nämna någon fil

FileListBoxen måste du lägga in från verktygslådan den tar all hantering av filerna i den mapp
som sPath pekar mot


Svara

Sv: Översätt VBA

Postades av 2004-12-17 23:58:20 - Torfi Ingolfsson

Raderat inlägg


Svara

Sv: Översätt VBA

Postades av 2004-12-18 00:00:27 - Torfi Ingolfsson

Hej igen, Det fungerar Kanon.

lite till frågor.

Vad gör underscore "_" i koden? Rad byte?

/Torfi


Svara

Sv:Översätt VBA

Postades av 2004-12-18 08:56:37 - Sven Åke Persson

<b>Vad gör underscore "_" i koden? Rad byte? </b>

Det är bara en editeringsknorr.Hatar folk som inte gör radbyte , utan har 1 m långa
programmeringsrader.Dvs har inget med programmfunktion att göra, bara kosmetika.
Du kan betrakta det som en programrad.

<b>On Error Resume Next</b> står där för att om filen är "Skrivskydda" eller "Hidden"
så får du inte tillstånd att byta namn


Svara

Sv: Översätt VBA

Postades av 2004-12-19 11:25:10 - Sven Åke Persson

Nyfikenhetsfråga ! Varför gör man på detta sätt ?
Vad är det för vits att byta namn på tex en .exe till .txt ?


Svara

Sv:Översätt VBA

Postades av 2004-12-21 17:06:55 - Torfi Ingolfsson

Hej.
Skall inte byta ändelse från exe till txt.

Jag gör en export ur ett affärsystem som inte kan sätta tid eller liknande och måste ha unikt namn på filerna när det upploadas till mottagaren detta kommer att skötas av "dumma" användare som bara kan dubbelklicka på en ikon.

/Torfi

PS, Tack så mkt för din värdefulla hjälp.


Svara

Nyligen

  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 718
27 958
271 751
3 247
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies