Avatar billede mimet Nybegynder
04. marts 2013 - 00:01 Der er 2 kommentarer

kopiere celleværdi fra lukket regneark til userform textbox

Jeg har behov for, at kunne kunne indsætte/kopiere værdier fra regneark til userform i en "Initialize" sub, helst uden at åbne regnearket.
Jeg har prøvet forskellige løsninger men er ikke kommet i nærheden af en løsning, der virker. Derfor henvender jeg mig til jer "genier" på eksperten. i har før hjulpet mig med gode svar.

For regnarket gælder:
strsti = ActiveWorkbook.Path & "\Fakturaer"

Værdierne skal hentes fra regneark med strengen.
strsti & TxtKrdFaktnr.Value & ".xlsm" "cellerne(A4, A5, A6, A7)

for userform gælder:
Userform hedder "Kreditnota1"

Værdier skal indsættes i userform sådan her:
TxtNavnKRD1 = A4
TxtNavnKRD2 = A5
TxtNavnKRD3 = A6
TxtNavnKRD1 = A7

Håber snart at høre fra jer.

Med venlig hilsen
mimet
Avatar billede vv25 Nybegynder
06. marts 2013 - 07:30 #1
Prøv at se om du ikke kan bruge nedenstående.

Sub GetDataDemo()
   
    Dim FilePath$, Row&, Column&, Address$
    Dim Pnr As Long
   
    'change constants & FilePath below to suit
    '***************************************
    Const FileName$ = "Pnumre.xlsx"
    Const SheetName$ = "Data"
    Const NumRows& = 7
    Const NumColumns& = 1
    FilePath = "P:\EXCEL programmer\YDS\Igang\"
    Pnr = Sheets("Anmodning").Range("Pnr")
    '***************************************
   
    DoEvents
    Application.ScreenUpdating = False
    If Dir(FilePath & FileName) = Empty Then
        MsgBox "The file " & FileName & " was not found", , "File Doesn't Exist"
        Exit Sub
    End If
   
    For Row = 4 To NumRows
            For Column = 1 To NumColumns
                Address = Cells(Row, Column).Address
                Cells(Row, Column) = GetData(FilePath, FileName, SheetName, Address)
                Columns.AutoFit
            Next Column
    Next Row
    ActiveWindow.DisplayZeros = False
End Sub


Private Function GetData(Path, File, Sheet, Address)
    Dim Data$
    Data = "'" & Path & "[" & File & "]" & Sheet & "'!" & _
    Range(Address).Range("A1").Address(, , xlR1C1)
    GetData = ExecuteExcel4Macro(Data)
End Function
Avatar billede mimet Nybegynder
11. april 2013 - 23:50 #2
Hej vv25
Jeg har prøvet din kode i et hav af varianter, men kan ikke finde ud af at få den til at lykkes.
Da jeg ikke er super vba programmør, har du et andet, mere simpelt forslag til en kode, jeg er i stand til at forstå.

Hvis ikke er der måske en anden, der kan hjælpe mig.

Undskyld det sene svar, jeg har brugt en del tid på at finde ud af at omskrive din kode, den ser ellers rimelig god ud jeg kan bare ikke knække den.

Med venlig hilsen
Mimet
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
Kurser inden for grundlæggende programmering

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