Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


(Excel) Skapa OMfunktion som nekar/blinkar/varnar

Postades av 2006-12-11 16:10:30 - Christoffer Gisselfeldt, i forum microsoft office, Tråden har 17 Kommentarer och lästs av 3092 personer

Tjo!

Håller på med ett litet system i Excel där man kan boka upp nycklar.
Vill ha en funktion som varnar eller nekar helt om man fyller i ett nyckelnummer som redan är uppbokat. Excel är ju ett mycket kompetent program, så detta borde ju inte vara några som helst problem. Dock är jag inte riktigt hemma på hur jag ska lösa problemet. OMfunktionen verkar ju endast kunna lösa enklare saker så den verkar ju utesluten.

Det jag vill ha är alltså: OM Cellvärdet existerar i annan cell i kolumnen, så neka med blinkning/Varning/popupruta.

Är det möjligt att lösa med någon enkel funktion? Vore ruskigt bra då det är lite drygt o kolla av vilka nycklar som är registrerade och bokade redan.

//Christoffer


Svara

Sv: (Excel) Skapa OMfunktion som nekar/blinkar/varnar

Postades av 2006-12-11 18:52:43 - Niklas Jansson

Jag skulle nog ha ett annat upplägg som gör att problemet försvinner helt. Ha istället en lista med nycklar, och låt folk skriva in om de har lånat varje enskild istället istället.

Annars är det besvärligt, eftersom du måste hålla reda på den du redan har. Vad du skulle kunna göra är att använda COUNTIF eller motsvarande ANTAL.OM, och om det är >1 sätta det i conditional formatting.


Svara

Sv:(Excel) Skapa OMfunktion som nekar/blinkar/varnar

Postades av 2006-12-11 22:59:52 - Robert Israelsson

Eller så kan man skriva en liten kodsnutt som kollar.

Sub Taken()
If ActiveCell.Offset(-1, 0).Value <> "" Then
    Dim newBooking As Range
    Set newBooking = ActiveCell.Offset(-1, 0)
    newBooking.Select
        Do While ActiveCell.Value > 0 And ActiveCell.Row > 1
        If ActiveCell.Row > 1 Then ActiveCell.Offset(-1, 0).Select
            If newBooking = ActiveCell Then
                MsgBox "Nyckeln är redan bokad", vbExclamation + vbOKOnly, "FEL"
                newBooking.Value = ""
                newBooking.Select
                Exit Do
            End If
            
        Loop
        If newBooking.Value > 0 Then newBooking.Offset(1, 0).Select
        Set newBooking = Nothing
End If
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
Call Taken
End Sub


Koden kollar från senast ifylld och uppåt i listan, jämför värdet, om den hittar kommer en ruta som säger just "Nyckeln är redan bokad" och den hoppar ur kontrollen och rensar senast ifyllda. Detta gäller för enter och inte tab men kan modifieras för att passa båda om man vet vilken kolumn nycklarna alltid kommer att finnas i.


Svara

Sv: (Excel) Skapa OMfunktion som nekar/blinkar/varnar

Postades av 2006-12-12 00:12:20 - Niklas Jansson

Använd aldrig VBA om det inte är absolut nödvändigt. I synnerhet ska det undvikas om det inte finns någon annan kod i applikationen. Min metod kommer funka, men det allra bästa är att designa applikationen så att sånt inte behövs. (Mitt första förslag.)


Svara

Sv: (Excel) Skapa OMfunktion som nekar/blinkar/varnar

Postades av 2006-12-12 09:24:24 - Andreas Hillqvist

Access är mer kompetent. Skulle nog leverera en bättre lösning.
Men jag antar att du känner dig mer hemma i Excel.


Svara

Sv: (Excel) Skapa OMfunktion som nekar/blinkar/varnar

Postades av 2006-12-12 12:53:15 - Per Wahlgren

OM-funktionen är bättre och mer avancerad än vad den ser ut vid en första anblick då den ju kan innehålla nästlade villkor och andra funktioner i ett delvillkor. Så OM *hmm* den inte kan hjälpa dig har du för krånglig kontroll och då skulle jag också rekommendera åtminstone Access.

Förklara mer vad som skall kollas så kan man säkert ge ett tips.
(Menar du tex att man skall leta efter det inskrivna värdet i ett annat område på samma flik i Excel, eller hur tänker du dig det hela?)

/ Per


Svara

Sv:(Excel) Skapa OMfunktion som nekar/blinkar/varnar

Postades av 2006-12-12 13:18:42 - Niklas Jansson

Ni verkar missa poängen i att det redan finns tre lösningar i tråden?


Svara

Sv: (Excel) Skapa OMfunktion som nekar/blinkar/varnar

Postades av 2006-12-12 13:18:45 - Christoffer Gisselfeldt

Ang. VBA där ... Kan man koppla den mot en specifik kolumn så den börjar på en specifik cell och kollar neråt?

Om jag t.ex. vill att den ska börja kolla om nyckeln existerar på cell D16 och neråt. Är det möjligt?
Kan man även styra på minusvärden? "OM antal nycklar kvar < 0 - Visa felmeddelande" ?

Ang. Access... Det är inte jag som sköter administeringen av dessa utlåningar... Och Excel är faktiskt väldigt kompetent. Skulle kunna koppla Access mot t.ex. ett webbgränssnitt, men jag har inte tid :P


Svara

Sv:(Excel) Skapa OMfunktion som nekar/blinkar/varnar

Postades av 2006-12-12 13:28:50 - Niklas Jansson

Läs mitt första inlägg. Det absolut enklaste sättet är att bygga om strukturen, det näst enklaste är göra det via conditional formatting, och en enkel formel.

Att använda imperativ programmering i onödan är att be om problem. (Naturligtvis hade en databas varit bättre ur många synvinklar, men det är klart att det nog inte är aktuellt.)


Svara

Sv: (Excel) Skapa OMfunktion som nekar/blinkar/varnar

Postades av 2006-12-12 14:24:13 - Per Wahlgren

<b>Ni verkar missa poängen i att det redan finns tre lösningar i tråden?</b>

Niklas! Det är väl först när den som initierat frågan sätter tråden som löst man kan anse att personen är nöjd? Oavsett om du eller andra anser att deras förslag är 'de enda rätta'?


Svara

Sv: (Excel) Skapa OMfunktion som nekar/blinkar/varnar

Postades av 2006-12-12 16:22:51 - Andreas Hillqvist

<b>Ni verkar missa poängen i att det redan finns tre lösningar i tråden?</b>
Varför ger du antalet tidigare svar som ett argument för att inte fortsätta ge förslag feedback?
Vid hur många lösningar skall man nöja sig vid?

Det går att göra väldigt mycket i Excel men Excel är inte lämpligt för att göra allt.
Det finns situationer användningen av excel dolt fel/problem med en tillämpning.
Det har blanda annat Computer Sweden tagit upp i några av sina artiklar.

Jag anser att en databas applikation är mer lämplig att lösa det ursprungliga problemet att organiserar utlåna och innehav av nycklar. Det finns kanske ett skäl till att lagra historik då om någt försvinner går det att se vilka som hade en nyckel.
I Access är det relativt lätt att skapa enkla databas applikationer. Jag ser det som det närmaste steget från Excel.


Svara

Sv:(Excel) Skapa OMfunktion som nekar/blinkar/varnar

Postades av 2006-12-12 21:42:57 - Niklas Jansson

<b>>Niklas! Det är väl först när den som initierat frågan sätter tråden som löst man kan anse att personen är nöjd? Oavsett om du eller andra anser att deras förslag är 'de enda rätta'?</b>
Eftersom jag är en ganska van utvecklare för Excel och känner till ganska många sätt att lösa de flesta problem, så kan jag säga att den lösning som kommer ge minst problem är den jag gav först, den som ger näst minst den jag gav därefter.

Att göra VBA-kod för något sånt här är som sagt att be om problem.
Att göra en övergång till ett helt annat format och system när man redan är insatt i ett är väl knappast det lättaste.

Det här är en så pass enkel situation att allt utom den enklaste lösningen är overkill. Anledningen till mitt uttalande var att jag kände att den allra enklaste lösningen blev dränkt i massa andra förslag. Mina lösningar tar si så där 20 sekunder att få klara styck, medan endera annan lösning skulle ta betydligt längre tid att göra. Det vore synd om OP inte testar det enkla först...


Svara

Sv: (Excel) Skapa OMfunktion som nekar/blinkar/varnar

Postades av 2006-12-13 14:26:31 - Christoffer Gisselfeldt

Niklas, jag skulle gärna testa ditt förslag om jag förstod hur det skulle användas. Jag är inte riktigt med på hur ANTAL.OMfunktionen kombinerat med villkorsstyrd formatering ska hjälpa mig med mitt problem?

Skriver lite mer så ni förstår lite hur det är uppbyggt.
Exceldokumentet är alltså uppbyggt av en namnlista. Består egentligen av massor av kolumner, men för att göra det enkelt att förklara så kan vi säga att den består av en Namnkolumn, en antalkolumn samt en märkningskolumn.

Namn Antal Märkning
Christoffer 1 U5

Den är alltså lite mer komplex än så, men det är lite jobbigt att förklara allt i detalj.

Till ovanstående funktion fungerade ju VBAn, dock kör ju den i hela dokumentet så den nekar ju även när man fyller i antal "1" på flera personer.

Om det finns något enklare och bättre sätt än VBA till att lösa detta så får ni gärna dela med er av lösningarna. Jag har som sagt försökt med både VBAlösningen samt försökt få igång ANTAL.OMfunktionen, men den lyckas jag inte med.

Har dock använt villkorsstyrd formatering om nycklarna är slut men den nekar ju fortfarande inte till att dubbelboka en nyckel.


Svara

Sv:(Excel) Skapa OMfunktion som nekar/blinkar/varnar

Postades av 2006-12-13 17:40:52 - Niklas Jansson

Nu kom det in något nytt; "antal" har du inte tagit upp tidigare.

Om den inte är med på något nytt sätt, så får du göra följande:

1. Markera hela kolumnen. Jag antar att det är kolumn "B"
2. Ange villkorsstyrd formatering med villkoret "'Formel är' =ANTAL.OM(B:B; B1)>1". Anpassa efter kolumnval, ta eventuellt bort conditional formatting från de första raderna, osv. Var noga att inte ha $ på andra argumentet.


Svara

Sv: (Excel) Skapa OMfunktion som nekar/blinkar/varnar

Postades av 2006-12-13 22:40:43 - Robert Israelsson

Frågan är ju då också om antalet tillgängliga nycklar varierar för olika märkningar, t ex om det finns totalt 3 nycklar av märkningen U5 och 10 av märkningen H7?


Svara

Sv:(Excel) Skapa OMfunktion som nekar/blinkar/varnar

Postades av 2006-12-14 08:28:50 - Christoffer Gisselfeldt

Ja, antalet nycklar varierar. Att sätta låsningen på antal är ju inte ett alternativ då den kolumnen bara anger hur många nycklar en person har, av en viss typ.
-----------------------------------------------------------
N N
Y Y
C C
K K
E E
L L
T T
Y Y
P P
1 2
Antal nycklar: 60 Antal nycklar: 20
Antal kvar: 57 Antal kvar: 19
Namn Antal Märkning Antal Märkning
Christoffer 1 U5
Anders 1 M2
Nisse 2 U2
-----------------------------------------------------------

Såhär ser det alltså ut.

Antal kvar räknar ner automatiskt (Antal nycklar-SUMMA på antalraden).
Antal nycklar hämtas från ett annat excelblad som är kopplat.

Det är alltså MÄRKNINGEN jag vill låsa på. Det finns ett antal personal så det blir ganska många nycklar. Det jag vill är alltså att den ska NEKA om någon försöker fylla i nyckel "M2" igen i andra nyckeltypen, samt att det ska neka om man försöker lägga in "U5" eller "U2" i första nyckeltypen.

Känner rent spontant att en ANTAL.OMfunktion inte kommer lösa det då nycklarna inte bara är numrerade, utan även har bokstäver. Nu hoppas jag på att jag har rett ut alla frågetecken kring detta :)


Svara

Sv: (Excel) Skapa OMfunktion som nekar/blinkar/varnar

Postades av 2006-12-14 11:53:07 - Niklas Jansson

Okej, antalet är inte kopplat till varje nyckelbeteckning, det enda du vill göra är att på något sätt reagera om en nyckel redan finns.
Då använder du det jag har sagt från första början, antal.om och conditional formatting. Funktionen bryr sig inte ett dugg om det är siffror eller text.

En annan variant om det inte gör något att klottra ner med lite extra kolumner är att göra nya kolumner med samma antal.om-formel. Validering skulle eventuellt kunna fungera också.


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 617
27 953
271 709
5 733
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies