Avatar billede Chenowen Nybegynder
01. oktober 2012 - 14:24 Der er 3 kommentarer og
1 løsning

Automatisk opdatering fra et ark til andre ark

Hej,

Jeg er igang med at lave et regneark, hvor jeg skal tage en masse data omkring kunder fra et andet program (navision). Når disse er kopieret fra navision ind i excel i eks. ark2, er det så muligt at gøre sådan, at de kunder med eksempelvis landekoden DK, automatisk bliver placeret i et nyt ark som hedder DK, landekode GB i ark GB osv.?? Tænkte dette evt. kunne gøres vha. af en VBA kode eller sådan noget??

Håber problemet er forståeligt
Avatar billede supertekst Ekspert
01. oktober 2012 - 14:28 #1
Ja - det er ikke noget problem.

Du er velkommen til sende et filen eller model/uddrag heraf. @-adresse undern min profil.

Er de relevante "nationsark" oprettet på forhånd eller..

og så velkommen til Eksperten..
Avatar billede Chenowen Nybegynder
01. oktober 2012 - 14:47 #2
Indtil videre er "nationsarkene" ikke lavet, da jeg ikk var sikker på det var muligt!! Men jeg kan lige få lavet excel-filen, med de nødvendige "nationsark" og så sende den til dig..

Skal jeg også have lagt alle kunde dataen ind, eller kan du godt bare lave koden uden disse er lagt ind endnu?? Altså kan lave nogle overordnede overskrifter, så du ved hvordan dataen kommer til at ligge i det ark..
Avatar billede supertekst Ekspert
01. oktober 2012 - 15:17 #3
Det er ok med nationsark & overskrifter - men gerne lige et par "dummy kunder".

Kan der komme flere nationer, end dem du opretter. Det kan også lade sig gøre via VBA-koden?
Avatar billede supertekst Ekspert
03. oktober 2012 - 13:06 #4
Rem version 2
Rem =========
Dim antalRækker As Long, landekode As String, ræk As Long
Dim ræk1 As Long                                    'første række i kundedata

Const fraKolonne = "A"                              '<-- kan justeres
Const tilKolonne = "A"                              '<-- kan justeres

Const rækx = 7                                      'første række Nationsark
Public Sub fordelPåLandekoder()
    antalRækker = ActiveCell.SpecialCells(xlLastCell).Row
   
Rem hentværdi til første række, der skal behandles i næste kørsel
    ræk1 = Range("F1")
   
    For ræk = ræk1 To antalRækker
        landekode = Range("D" & ræk)
        If landekode <> "" Then
            Range(fraKolonne & ræk & ":" & tilKolonne & ræk).Select
            Selection.Copy
            If findesLandeKode(landekode) = True Then
               
                flytTilLandeKoden
            Else
                MsgBox "Landekode: " & landekode & " findes ikke"
            End If
        End If
    Next ræk
   
Rem opdater sidst behandlede række+1
    Range("F1") = ræk
End Sub
Private Function findesLandeKode(landekode)
On Error GoTo landeKodeMangler
    Sheets(landekode).Activate
    findesLandeKode = True
    Exit Function
   
landeKodeMangler:
    findesLandeKode = False
End Function
Private Sub flytTilLandeKoden()
Dim ræk
    For ræk = rækx To 65000
        If ActiveSheet.Range("A" & ræk) = "" Then
            ActiveSheet.Range("A" & ræk).Select
            ActiveSheet.Paste
           
            Sheets("Kundedata").Activate
            Application.CutCopyMode = False
            Exit Sub
        End If
    Next ræk
End Sub
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