Angenommen, ich habe einen gewissen Wert in Excel-Zelle, seine Art etwas sein kann Datum, numerisch oder String , und ich will, dass die Zelle validiert gegen seinen Typ sein ... Gibt es eine Möglichkeit, dies zu tun? Danke im Voraus ..Gibt es irgendeine Art und Weise Zellenwert für Validieren in Excel (vsto)
Antwort
Ich nehme an, Sie meinen, dass Sie Inhalte in einer Zelle haben, die entweder ein Datum, ein Doppel oder eine einfache Zeichenfolge sein könnte, und dass Sie den entsprechenden .NET-Typ geltend machen möchten . Ich glaube, dazu gibt es keinen direkten Weg. Ein Ansatz wäre, den Wert2 in der Zelle abzurufen und zu versuchen, ihn auf jeden dieser Typen zu übertragen, beginnend mit dem restriktivsten, bis der Cast funktioniert - also DateTime (DateTime.FromOADate), dann Double (Convert.ToDouble). , dann string - und wenden Sie dann die Validierungsregel an, die für den bestimmten Typ gilt, den Sie gefunden haben.
Ich bin mir nicht ganz sicher, was Sie mit Validierung meinen, und was das für Sie bedeutet. Wenn Sie die Art des Inhalts kennen, was würden Sie damit machen?
Ich benutze die Datenvalidierungstechnik von Excel in einer VSTO-Anwendung selbst. Es ist offensichtlich nicht VSTO, aber es funktioniert gut genug. Es gibt einige Nachteile, wie Sie nicht mehrere Validierungen auf der gleichen Zelle haben können (d. H. Sie müssen wissen, was Ihre Validierung für)
Validierungen und Format können zusammen verwendet werden, oder? ;-) –
ja können sie. Viel Glück. – RobertG5
Sie können direkt die Excel-Funktionalität verwenden !!! keine Notwendigkeit einer Codierung dafür !!
statt harter Arbeit für die intelligente Arbeit gehen ...
in Excel, Gehen Sie auf die Zelle, in der Sie die Validierung wollen
Menü kommen - >> Daten -> Validierung
Hier können Sie direkt die verschiedenen Excel-Validierungsbegriffe verwenden. dem Sie verweisen here oder ..
http://support.microsoft.com/kb/211485
Thanx Grüße.
Ich möchte die Daten durch Codierung entsprechend der Anforderung validiert werden ... – Smack
wenn Sie es sehr einfach und perfekt durch die bestehende Plattform wie EXCEL tun können .. warum entscheiden Sie sich für den härteren Weg, dies zu tun !!! Entscheidung gehört dir !!! :-) –
hey, ich bin mir der Standard-Validierung von Excel bewusst, aber ich möchte wissen, gibt es irgendeine Methode, um es durch Code zu tun? Ich versuche nur, die Dinge zu erforschen .... :) – Smack
- 1. Gibt es eine bessere Art und Weise dazugehörigen Datensatz in rails3 zu validieren
- 2. Gibt es irgendeine Art von "Ausdrucksklasse" (C++)
- 3. Gibt es irgendeine Art von Import für Android-Layout-Dateien?
- 4. Gibt es irgendeine Art von Abhängigkeits-Tracer für Asp.Net-Apps?
- 5. Gibt es irgendeine Art von Interceptor-Implementierung in SQLite
- 6. Gibt es irgendeine Art von Template-Engine in VB?
- 7. Gibt es eine elegante Art und Weise meines ndarray
- 8. gibt es andere Art und Weise des Schreibens Bereich
- 9. Gibt es eine bessere Art und Weise String ohne Platzhalter
- 10. Gibt es irgendeine Schlaffunktion?
- 11. Gibt es irgendeine ScalaConsole?
- 12. Gibt es irgendeine Art von Nicht-Text-Schnittstelle zu MySQL?
- 13. So validieren und bearbeiten Sie einen Zellenwert
- 14. Gibt es irgendeine Scala DSL für GUI?
- 15. gibt es irgendeine Beschränkung für ipa-Datei
- 16. VSTO schreibe in eine Zelle in Excel!
- 17. Excel Kontrollen in VSTO
- 18. Gibt es eine Zukunft für PowerPoint VBA/VSTO?
- 19. Irgendeine Art von Task-Manager für JavaScript in Firefox 3?
- 20. Excel Daten validieren und filtern
- 21. VSTO PowerPoint/Excel Interaktion
- 22. VSTO Start EXCEL in Code
- 23. VSTO - Der beste Speicherort für Excel-Arbeitsmappeneinstellungen
- 24. Tabellen in Excel mit VSTO
- 25. VSTO: Excel Größenänderung in vb.net
- 26. effiziente Art und Weise von
- 27. Gibt es eine "richtige" Art und Weise CSV-Dateien zu lesen
- 28. elegante Art und Weise Spaltenreihenfolge
- 29. Wie funktioniert Excel VSTO?
- 30. Excel VSTO Sortierdialogfeld C#
Angenommen, Benutzer geben falsches Datum in Zelle ein und ich möchte Benutzer darüber informieren, sobald er das Datum eingibt ... Ich habe Blattwechsel-Ereignis versucht, aber da ich kopierte Zelle am meisten offen das Shhet Change-Ereignis zu dieser Zeit ausgelöst also die Validierung, die für mich nicht durchführbar ist ... danke für deine Antwort :) – Smack
Sie können vielleicht tun, was Sie wollen, aber es hängt davon ab, wie strukturiert das Blatt ist - und es dauert ziemlich viel Arbeit. Angenommen, Sie haben ein Blatt, von dem Sie wissen, dass Spalte C Daten enthalten sollte; Anschließend können Sie das Ereignis content changed für das Blatt verwenden, prüfen, ob der geänderte Bereich Zellen in Spalte C enthält, und die entsprechende Validierung durchführen. – Mathias
Schöne Erklärung Mathias. Dies ist im Wesentlichen der einzige Weg, um mit der Zellenvalidierung zu beginnen, da Sie Value2 entweder in eine Zeichenfolge, ein Double, OLEDate oder Bool trennen müssen. –