Avatar billede joggeren Nybegynder
29. september 2004 - 11:58 Der er 10 kommentarer og
1 løsning

Hjælp til makro

I nedenstående kode, henter Excel data fra andre ark. Der er kædede data i disse ark, og jeg skal bare have tilføjet at den automatisk siger ja til at opdatere de kædede data. Som den er nu, skal jeg manuelt sige ja til alle de ark den henter fra.

Public Sub LOTUSGetDataFromOtherWorkbook()
    Dim sFolder As String
    Dim sFileToOpen() As String
    Dim wbData As Workbook
    Dim rInsert As Range
    Dim lCount As Long

    Application.ScreenUpdating = False
    Set rInsert = Sheets("Ark1").Range("A1")
    sFolder = "F:\Jesper\Kalkulationer\Kalk 2004\"
   
    lCount = 1
    ReDim sFileToOpen(1 To lCount)
    sFileToOpen(lCount) = Dir(sFolder + "*.xls")
    Do While Not (sFileToOpen(lCount) = "")
        lCount = lCount + 1
        ReDim Preserve sFileToOpen(1 To lCount)
        sFileToOpen(lCount) = Dir
    Loop
    ReDim Preserve sFileToOpen(1 To lCount - 1)
    For lCount = 1 To UBound(sFileToOpen)
        Set wbData = Application.Workbooks.Open(FileName:=sFolder & sFileToOpen(lCount))
        rInsert.Offset(lCount, 0).Value = wbData.Sheets(1).Range("J1").Value
        rInsert.Offset(lCount, 1).Value = wbData.Sheets(1).Range("A14").Value
        rInsert.Offset(lCount, 2).Value = wbData.Sheets(1).Range("B14").Value
        rInsert.Offset(lCount, 3).Value = wbData.Sheets(1).Range("F14").Value
        rInsert.Offset(lCount, 4).Value = wbData.Sheets(1).Range("G14").Value
        rInsert.Offset(lCount, 5).Value = wbData.Sheets(1).Range("H14").Value
        rInsert.Offset(lCount, 6).Value = wbData.Sheets(1).Range("J14").Value
        rInsert.Offset(lCount, 7).Value = wbData.Sheets(1).Range("A15").Value
        rInsert.Offset(lCount, 8).Value = wbData.Sheets(1).Range("B15").Value
        rInsert.Offset(lCount, 9).Value = wbData.Sheets(1).Range("F15").Value
        rInsert.Offset(lCount, 10).Value = wbData.Sheets(1).Range("G15").Value
        rInsert.Offset(lCount, 11).Value = wbData.Sheets(1).Range("H15").Value
        rInsert.Offset(lCount, 12).Value = wbData.Sheets(1).Range("J15").Value
        rInsert.Offset(lCount, 13).Value = wbData.Sheets(1).Range("A16").Value
        rInsert.Offset(lCount, 14).Value = wbData.Sheets(1).Range("B16").Value
        rInsert.Offset(lCount, 15).Value = wbData.Sheets(1).Range("F16").Value
        rInsert.Offset(lCount, 16).Value = wbData.Sheets(1).Range("G16").Value
        rInsert.Offset(lCount, 17).Value = wbData.Sheets(1).Range("H16").Value
        rInsert.Offset(lCount, 18).Value = wbData.Sheets(1).Range("J16").Value
        rInsert.Offset(lCount, 19).Value = wbData.Sheets(1).Range("A17").Value
        rInsert.Offset(lCount, 20).Value = wbData.Sheets(1).Range("B17").Value
        rInsert.Offset(lCount, 21).Value = wbData.Sheets(1).Range("F17").Value
        rInsert.Offset(lCount, 22).Value = wbData.Sheets(1).Range("G17").Value
        rInsert.Offset(lCount, 23).Value = wbData.Sheets(1).Range("H17").Value
        rInsert.Offset(lCount, 24).Value = wbData.Sheets(1).Range("J17").Value
        wbData.Close SaveChanges:=False
        Set wbData = Nothing
    Next lCount
   
    ' Clean up
    Set rInsert = Nothing
    Application.ScreenUpdating = True
   
    End Sub
Avatar billede sjap Praktikant
29. september 2004 - 12:34 #1
Kan du ikke bruge

Application.DisplayAlerts = False

Bar husk at slå dem til igen

Application.DisplayAlerts = True
Avatar billede sjap Praktikant
29. september 2004 - 12:40 #2
joggeren > Er det ikke det samme spørgsmål som du har i http://www.eksperten.dk/spm/544683
Hvis det er, så skal du lukke det ene.
Avatar billede joggeren Nybegynder
29. september 2004 - 12:43 #3
Jo.. men ingen har svaret...

og har brug for det snarest muligt..

Ved ovenstående løsning... opdaterer den så dataene?

Jeg kunne selv svare på det andet spørgsmål, men der er nogen der fortjener points.
Avatar billede joggeren Nybegynder
29. september 2004 - 12:44 #4
Tidligere har jeg brugt denne kommando

UpdateLinks:=3

Men jeg ved ikke hvor jeg skal sætte den ind.
Avatar billede joggeren Nybegynder
29. september 2004 - 12:45 #5
Prøvede at indsætte din kode... det gjorde dog inden forskel.

Måske sætter jeg dem ind et forkert sted.
Avatar billede sjap Praktikant
29. september 2004 - 12:50 #6
Problemet er at du IKKE må oprette det samme spørgsmål to gange. Hvis du mener du ikke kommer længere med det gamle, så må du give point og få det lukket. Men så vidt jeg lige kan se, så afventer du et svar fra bak vedr. noget af hans kode.

Punkt 1.11 i ekspertens regler er:
Det er ikke tilladt at oprette samme spørgsmål flere gange. Er der ikke indløbet tilfredsstillende svar på et spørgsmål efter 7 dage, er det dog tilladt at lukke det oprindelige spørgsmål, og oprette et nyt identisk.

Det mest rimelige synes jeg vil være at du lukker dette spørgsmål, og så fortsætter vi diskusionen i det gamle. OK?
Avatar billede joggeren Nybegynder
29. september 2004 - 12:51 #7
OK...
Avatar billede joggeren Nybegynder
29. september 2004 - 12:52 #8
ups.. så formåede jeg at trykke forkert da jeg skulle give points..
Avatar billede sjap Praktikant
29. september 2004 - 12:52 #9
Næh, hov nu gik det galt. Jeg skulle IKKE have point!
Avatar billede sjap Praktikant
29. september 2004 - 12:53 #10
OK, så må vi huske, at jeg ikke skal have nogen, når vi får afsluttet det andet spørgsmål.
Avatar billede joggeren Nybegynder
29. september 2004 - 12:53 #11
Ja... men lad os fortsætte i den anden tråd.
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester