• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Gegevens overhalen/verzamelen uit een ander bestand!?

Status
Niet open voor verdere reacties.

McMacro

Gebruiker
Lid geworden
11 dec 2009
Berichten
80
Beste Excelprofs,

Daar gaan we weer! Ik zou graag vanuit bestand 'Dummy Bron 2012' gegevens over willen zetten naar bestand 'Factureren 2012'. Het maakt niet uit of er een Knop in 'Dummy Bron 2012' komt te staan (wat wel praktischer is) of in 'Factureren 2012'.

Dus overzetten of overhalen.

In de bijlage vinden jullie de 2 bestanden. Het kan zijn dat er in de toekomst meerdere bestanden zoals 'Dummy Bron 2012' komen die helaas niet te intergreren zijn in één bestand. Indien mogelijk zou de VBA-code hier al op aangepast kunnen worden.

In 'Factureren 2012' staat een voorbeeld waar de dat gegevens verzameld dienen te worden opgesplits onder het 'Type' dossier, gesorteerd op datum.

Wat is de bedoeling?
Voor iedere maand moet er een bestand klaargezet worden voor de afdeling die de facturen klaar maakt. Aan het einde van iedere maand moet er gekeken worden naar de dossiers die in kolom BI op Gereed staan. Van die dossiers moeten alleen de gegevens overgehaald worden die in de betreffende kolommen ingevuld dienen te worden.

Ik hoop dat dit een beetje duidelijk is en dat het een 'peace of cake' is voor jullie. Zo niet laat even weten wat er niet duidelijk is.

Met vriendelijke groet,

McMacro
 

Bijlagen

  • Dummy Bron 2012.zip
    79,6 KB · Weergaven: 23
  • Facturering 2012.xls
    66 KB · Weergaven: 28
Iemand een idee? Is de vraagstelling te moeilijk? Of is de oplossing van het vraagstuk te moeilijk of zelfs ondoenlijk?

Met vriendelijke groet,


McMacro
 
Misschien nog even m'n vraag "highlighten". Heeft iemand een idee?

Met vriendelijke groet,

McMacro
 
Zal er morgen eens naar kijken. Nu slaapjes doen (vannacht weeral broodjes bakken:rolleyes:)
 
Zet alle dummybestanden in een directory. Zet het factureringsbestand in een aparte directory.
In Module1 pas je Const Directory aan in het juiste pad. Klik nu op de knop op je werkblad.
 

Bijlagen

  • Facturering 2012.xls
    82 KB · Weergaven: 24
Laatst bewerkt:
Rudi,

Heel erg bedankt voor de moeite! Mijn excuses voor de late reactie. Normaal krijg mooi een mailtje van Helpmij als er gereageerd is op mijn topic, maar dit keer niet.
Maargoed, ik heb zojuist geprobeerd om alles werkend te krijgen. Even voor de goede orde:
1. Alle dummybestanden staan in een directory.
2. Het factureringsbestand staat in een andere directory.
3. Ik heb in module1 de const directory aangepast naar de map waar de dummybestanden staan: Const Directory As String = "C:\Mijn Documenten\Excel\Dummy\"
4. Bij het uitvoeren van de macro krijg ik de volgende melding: "Fout 91 tijdens uitvoering: Objectvariabele of blokvariabele With is niet ingesteld"

Code:
Sub Factureren()
  Application.ScreenUpdating = False
  'ActiveSheet.Unprotect
  'Application.Calculation = xlManual
  Dim splits As Variant, cl As Range, bestandopen
  Dim Sh2 As Worksheet, TB1 As Worksheet, WB2 As Workbook, bOpen As Boolean
  Dim fSearch As String, sRow As Integer, vGegevens As String
  
  Set TB1 = ThisWorkbook.Sheets("Facturatieblad")   'doel
  bestandopen = Dir(Directory)
  Do Until bestandopen = ""
    If bestandopen = "" Then MsgBox "Geen bestanden aanwezig in " & Directory: Exit Do
        Workbooks.Open Directory & bestandopen      'bron
        Set WB2 = Workbooks(bestandopen)
        Set Sh2 = WB2.Sheets(1)
        With Sh2
            For Each cl In .Range("BI6:BI1000")
                If cl.Value <> "Afgehandeld" Then GoTo vervolg
                fSearch = .Cells(cl.Row, 1).Value
               [COLOR="#FF0000"] sRow = TB1.Columns(1).Find(fSearch, , xlValues, xlWhole).End(xlDown).Offset(1).Row[/COLOR]                
               vGegevens = .Cells(cl.Row, 13).Value & ", " & .Cells(cl.Row, 12).Value & ", " & _
                            .Cells(cl.Row, 26).Value & ", " & .Cells(cl.Row, 1).Value
                With TB1
                    .Cells(sRow, 1) = Sh2.Cells(cl.Row, 12).Value
                    .Cells(sRow, 2) = Sh2.Cells(cl.Row, 13).Value
                    .Cells(sRow, 3) = Sh2.Cells(cl.Row, 19).Value
                    .Cells(sRow, 4) = Sh2.Cells(cl.Row, 20).Value
                    .Cells(sRow, 5) = Sh2.Cells(cl.Row, 21).Value
                    .Cells(sRow, 6) = Sh2.Cells(cl.Row, 14).Value
                    .Cells(sRow, 7) = Sh2.Cells(cl.Row, 17).Value
                    .Cells(sRow, 8) = vGegevens
                    .Cells(sRow, 9) = Sh2.Cells(cl.Row, 59).Value
                End With
vervolg:
            Next
    End With
  ActiveWorkbook.Close False
  bestandopen = Dir
  Loop
  Application.ScreenUpdating = True
End Sub

What to do...?

Met vriendelijke groet,

McMacro

PS Ik werk met Excel 2000 :confused:
 
Laatst bewerkt:
Staat er steeds Alfa, Beta of Gamma in de eerste kolom bij de Afgehandelde projecten, want als deze cel leeg is of een andere waarde heeft kan dit niet gevonden worden in je facturatieblad en resulteert dit in een foutmelding.
 
Bedankt rudi...

Dat was inderdaad het probleem. Er gaan een paar andere zaken nog niet helemaal goed. Hij moet niet alleen naar de eerste sheet kijken, maar ook op de volgende scheets Want ik heb er nu een bestand/dummy bij die alles verdeeld heeft over 6 sheets en ook nog de statuskolom op verschillde plaatsen staan heeft. Ik zal de vraag voorlopig op afgehandeld zetten. Ik kom erop terug als er echt geen andere mogelijkheid is om de facturen klaar te zetten.

Bedankt voor de moeite...

Met vriendelijke groet,

McMacro
 
Gooi er dan eens een dummy in zoals je bedoelt in je uitleg. Dat de statuskolom op verschillende plaatsen staat is op zich niet zo'n groot probleem omdat je in de titelrij kan zoeken naar het woord Status en alzo de kolom bepalen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan