14. februar 2010 - 12:34Der er
9 kommentarer og 1 løsning
Makro hjælp.. = 200 point
Jeg har udarbejdet en excel fil som jeg benytter som et værktøj i min hverdag: I denne fil er der en makro som skal oprette en mappe på et drev.
Det funger således:
Man placer sig i celle A i den række som indeholder den mappe som ønskes oprettet.
Når man står i celle A i f.eks række 11 og man aktiver makroen, så oprettes der en mappe på drevet, mappen navngives med teksten i celle Q i den række som man står i for dette tilfælde Q11.
Teksten i celle Q er en sammen sætning af teksten i celle A D F G med nogle mellemrum og tegn mellem.
=CONCATENATE(A11;" ";D11;" - ";F11;", ";G11)
Denne "CONCATENATE" funktion går igen 55 gange pr. mdr. 660 gange i filen, det medfører at filen blive meget stor over 31 Mb (jeg ved det for når jeg slettes alle Q cellerne så er filen kun 0,5 Mb)
Jeg ønsker nu denne "CONCATENATE" funktion indarbejdet i min makro og det er det som jeg behøver hjælp til!
Makroen henter teksten i celle Q ved hjælp af en offset.
--------------------------------------------------------------- Sub Opret_tilbuds_mappe() ' ' Opret_tilbuds_mappe_på_drev Macro ' Macro made by Anders C. Strate 03-01-2010
Dim home As String home = ActiveCell.Address
Const myFolder As String = "F:\Tilbud\Afdeling 262\2010\"
On Error Resume Next 'MsgBox myFolder & ActiveCell.Offset(0, 16).Value MkDir myFolder & ActiveCell.Offset(0, 16).Value
If Err.Number > 0 Then
MsgBox "Den ønskede mappe findes allerede ", , "FEJL" ' MsgBox "Den ønskede mappe findes allerede " & Err.Description
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Det kan godt være at det er den vej, men i eks. var det række 11 det kunne lisågodt ha været 12, 20 eller på til 55 forskelige rækker i hver 12 ark.
Så funktionen skal ta udgangspkunt i den række som sen står i, man vil til en hver tid stå i celle A i den række som man nu har valgt. Kan man ikke bruge offset fre celle A ??
Sub Opret_tilbuds_mappe() ' ' Opret_tilbuds_mappe_på_drev Macro ' Macro made by Anders C. Strate 03-01-2010
Dim home As String home = ActiveCell.Address 'Const myFolder As String = "F:\Tilbud\Afdeling 262\2010\" Const myFolder As String = "C:\Documents and Settings\acst\Desktop\Diverse\TILBUD\test\" ' HUSK AT AFSLUTTE MED \ Dim Samlet As String, RW As Long RW = ActiveCell.Row Samlet = Cells(RW, "A") & " " & Cells(RW, "D") & " - " & Cells(RW, "F") & ", " & Cells(RW, "G")
If Dir(myFolder & Samlet, vbDirectory) = "" Then ' tjekker om mappen findes (Bibliotek, ikke fil) MkDir myFolder & Samlet ' hvis den ikke findes laves den End If
Sub Opret_tilbuds_mappe() ' ' Opret_tilbuds_mappe_på_drev Macro ' Macro made by Anders C. Strate 03-01-2010
'Const myFolder As String = "F:\Tilbud\Afdeling 262\2010\" Const myFolder As String = "C:\Documents and Settings\hb\Skrivebord\test" Dim Samlet As String, RW As Long RW = ActiveCell.Row Samlet = Cells(RW, "A") & " " & Cells(RW, "D") & " - " & Cells(RW, "F") & ", " & Cells(RW, "G") If Dir(myFolder & "\" & Samlet, vbDirectory) = "" Then ' tjekker om mappen findes (Bibliotek, ikke fil) MkDir myFolder & "\" & Samlet ' hvis den ikke findes laves den End If Range(home).Select
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.