Ga naar inhoud

Welkom op PC Helpforum!
PC Helpforum helpt GRATIS computergebruikers sinds 2006. Ons team geeft via het forum professioneel antwoord op uw vragen en probeert uw pc problemen zo snel mogelijk op te lossen. Word lid vandaag, plaats je vraag online en het PC Helpforum-team helpt u graag verder!

bakerman

Lid
  • Aantal items

    111
  • Registratiedatum

  • Laatst bezocht

Over bakerman

  • Titel
    Nieuweling

Profiel Informatie

  • Geslacht
    Man
  • Land
    België

Recente bezoekers van dit profiel

586 profielweergaven
  1. bakerman

    Hyperlinks

    @ kw muchas gracias. Wil je de bestaande hyperlinks herstellen naar hun origineel voorkomen dan volstaat deze. Sub Format_Hyperlinks() For Each cl In Range(Range("M5"), Range("M" & Rows.Count).End(xlUp)) If cl.Hyperlinks.Count Then cl.Style = "Hyperlink" Next End Sub @ruud
  2. Deze houdt rekening met lege cellen. =SOMPRODUCT((lammering[Ooi]<>"")/AANTAL.ALS(lammering[Ooi];lammering[Ooi]&"")) Bekijk ook eens de resultaten in de cellen op rij 4 kolom D, F, H, J Arnaud_Bedrijfsregistratie_TESTEXEMPLAAR.xlsm
  3. Post eens een bestand waarin je deze fout krijgt.
  4. Kijk eens of deze voldoen. Arnaud.xlsx
  5. Aangezien er geen andere kandidaten zijn, deze lost je afbeeldingprobleem op. Sub SamenvoegenVerwijderen() Dim sn, myarr, i As Long, j As Long With Blad1 sn = .Cells(1).CurrentRegion End With With CreateObject("scripting.dictionary") For j = 2 To UBound(sn) If IsNumeric(sn(j, 1)) Then .Item(sn(j, 2)) = .Item(sn(j, 2)) + sn(j, 1) Else .Item(sn(j, 2)) = sn(j, 1) End If Next ReDim myarr(1 To .Count, 1 To 6) i = 1 For Each Key In .keys myarr(i, 1) = .Item(Key): myarr(i, 2) = Key For j = 3 To 6 myarr(i, j) = Application.Index(Blad1.Cells(1).CurrentRegion, Application.Match(Key, Blad1.Columns(2), 0), j) Next i = i + 1 Next End With Application.ScreenUpdating = False With Blad2 For Each shp In .Shapes shp.Delete Next .Cells(2, 1).Resize(UBound(myarr), 6) = myarr For i = 1 To UBound(myarr) Blad1.Cells(Application.Match(myarr(i, 2), Blad1.Columns(2), 0), 5).Copy .Cells(i + 1, 5) Next .Range("A:F").EntireColumn.AutoFit End With Application.Goto Blad2.Cells(1) Application.ScreenUpdating = True End Sub Voor je andere vraag, plaats een voorbeeldbestand van en naar. lv.xlsm
  6. Dit kan je oplossen met Voorwaardelijke Opmaak. In de veronderstelling dat geldigheid in kolom A staat en controle in kolom C. =EN(ISGETAL(C2);A2 = "eenmalig") Kies je kleur en het bereik waarvoor de regel geldt en klaar.
  7. Touw, Er zijn twee manieren om dit aan te pakken. 1) Amateuristisch zoals je nu bezig bent met een halve oplossing hier, een halve oplossing daar en jij probeert het dan allemaal samen te gooien. 2) Professioneel en daarvoor plaats je een voorbeeld van het werkelijke bestand waarmee je nu werkt (zonder gevoelige info) met een duidelijke omkadering van hoe jij het zou willen dat het werkt zodat er oplossingen op maat kunnen gegeven worden. Ik veronderstel dat je een tabblad hebt met alle klantgegevens. Dit kan je gebruiken om je klantgegevens op je factuur in te vullen dmv Vertikaal zoeken of Index/Vergelijken gebaseerd op het klantnummer. Idem dito voor de artikelen. Je filtert per klant alle benodigde artikels op de factuur en met dezelfde formule zoek je de bijhorende prijzen op. Net zoals het samenstellen van je picklists. Ga je per locatie alles gewoon maar bij elkaar gooien en moeten ze het op het verzamelpunt dan maar uitzoeken of ga je alles per locatie/per klant samen zetten en daarna op het verzamelpunt een lijst voorzien met per klant alle locaties waar deze artikels van hebben zodat je enkel maar naar de respectievelijke paletten (of wat dan ook) moet gaan en alles per klant van elke locatie ineens kan opladen en bij elkaar zetten voor de uiteindelijke volledige bestelling. Deze laatste lijkt mij de meest logische en snelste manier van werken.
  8. Hiervoor heeft XL AutoFilter en Uitgebreid Filter ontworpen. In bijgaand voorbeeld wordt gebruik gemaakt van Uitgebreid Filter. Sub Knop1_Klikken() Sheets("Blad2").Cells(1).CurrentRegion.Offset(1).ClearContents With Sheets("Blad1") .Cells(3, 1).CurrentRegion.AdvancedFilter 2, .Range("J1:J2"), Sheets("Blad2").Range("A1:D1") End With End Sub Voorbeeld factuur ba.xlsm
  9. Heb wat opzoekingswerk verricht en deze doet schijnbaar wat jij beoogt. Je moet nog wel Sheet1 vervangen door de werkelijke naam van je werkblad. function onOpen() { var ThisSheet = SpreadsheetApp.getActiveSpreadsheet(); var StartingTab = ThisSheet.getSheetByName("Sheet1"); // The default tab being opened var LastRow = ThisSheet.getLastRow() + 1; // One past the last row that has been entered in the spreadsheet var LastCellString = "A"+LastRow+":A"+LastRow; // The string representing the last cell to position to var LastCell = ThisSheet.getRange(LastCellString); // The internal variable of the last cell StartingTab.setActiveRange(LastCell) // Actually perform the repositioning to the last cell }
  10. In de kolom van de actieve cel ga je met CTRL+PijlNaarBeneden naar de laatstgevulde cel. Als dus alle rijen gevuld zijn vanaf Rij 1 is dit de cel boven de eerstvolgende nieuwe regel. In VBA zou dit makkelijk op te lossen zijn met Application.Goto en Workbook_Open, maar Google Spreadsheets gebruikt echter App Script.
  11. Zoals gevraagd met een DropDown Menu (Gegevensvalidatie) in B1 en B2. De benoemde bereiken zijn nu ook Dynamisch wat betekent dat je in de toekomst Rijen\Kolommen kan Toevoegen\Verwijderen zonder dat je steeds de formules moet wijzigen in de Name Manager. Materiaalkosten_Govert.xlsx
  12. Probeer deze eens. Sub Rijen_Verwijderen() Application.ScreenUpdating = False lrow = Range("B" & Rows.Count).End(xlUp).Row For Each cl In Range("B2:B" & lrow) If Left(cl, 2) = 53 Then Do While (Left(cl.Offset(1), 2) <> 51) * (Left(cl.Offset(1), 2) <> 53) cl.Offset(1).EntireRow.Delete Loop End If Next Application.ScreenUpdating = True End Sub
  13. Beperk het aantal lees- en schrijfbewerkingen van en naar het werkblad tot een minimum. Sub tst() Set dic1 = CreateObject("scripting.dictionary") Set dic2 = CreateObject("scripting.dictionary") sn = Range("A2:A" & Cells(Rows.Count, 1).End(xlUp).Row).Resize(, 5).Value For i = 2 To UBound(sn) x0 = dic1.Item(Join(Array(sn(i, 1), sn(i, 2)), ",")) If (sn(i, 4) <> vbNullString) * (sn(i, 5) <> vbNullString) Then x0 = dic2.Item(Join(Array(sn(i, 4), sn(i, 5)), ",")) End If Next For j = 0 To dic1.Count - 1 dic1.Item(dic1.keys()(j)) = IIf(dic2.exists(dic1.keys()(j)), "Geantwoord", "Neen") Next Range("C3").Resize(dic1.Count) = Application.Transpose(dic1.items) End Sub
  14. Vanaf XL2010 kan je gebruik maken van volgende functie gebruiken om de celkleur van VO te bepalen. Kan momenteel niet testen maar misschien kan emielDS hier wel wat mee om je verder te helpen. Function getCellColorForReals(r As Range) As Long getCellColorForReals = r.DisplayFormat.Interior.Color End Function
  15. Je bestand is een mengeling van manueel aangebrachte kleuren en kleuren door VO. Is dit in het echte bestand ook zo ? Want kleuren aangebracht met VO worden door deze code niet herkend (daarom blijft Rij 4 ook staan)
Logo

OVER ONS

PC Helpforum helpt GRATIS computergebruikers sinds juli 2006. Ons team geeft via het forum professioneel antwoord op uw vragen en probeert uw pc problemen zo snel mogelijk op te lossen. Word lid vandaag, plaats je vraag online en het PC Helpforum-team helpt u graag verder!

×
×
  • Nieuwe aanmaken...

Belangrijke informatie

We hebben cookies geplaatst op je toestel om deze website voor jou beter te kunnen maken. Je kunt de cookie instellingen aanpassen, anders gaan we er van uit dat het goed is om verder te gaan.